In der Softwareentwicklung wird in aller Munde über Legacy-Code gesprochen, und ich habe gehört, dass der Begriff in den letzten zehn Jahren verwendet wurde, um eine Codebasis als schlecht zu bezeichnen.
Woher stammt dieser Begriff, der für Programmierer gleichermaßen eine so starke Bedeutung hat?
Ich bin mir sicher, dass es ein Buch über Softwareentwicklung geben muss, das Pionierarbeit für diesen Begriff geleistet hat. Ich würde gerne den Ursprung des Begriffs "Legacy-Code" ausfindig machen.
terminology
history
software
legacy-code
Stevebot
quelle
quelle
Antworten:
Legacy-Code basiert auf der Phrase eines Legacy-Systems , das speziell für Code gilt. Laut Wikipedia stammt es wahrscheinlich aus den 1970er Jahren und war in den 1980er Jahren allgemein gebräuchlich. Es begann mit der Tech-Explosion der 90er Jahre.
Dies kann mit Googles ngram viewer beobachtet werden: Legacy-System, Legacy-Code
Wenn Sie dies weiter vertiefen, finden Sie dokumentierte Verwendungen des Begriffs "Legacy-System" in den 1970er Jahren .
Das früheste Beispiel für ein "Legacy-System" in Google ist ein Buch über die Ergebnisse der Army Numerical Analysis and Computers Conference aus dem Jahr 1978:
Es gibt auch ein Beispiel für ein "Legacy-System", das außerhalb der Technologiebranche in Clout verwendet wird: Womanpower and Politics grinsen 1976:
Abgesehen von diesem Beispiel, das zeigt, dass seine Verwendung über die reine Software-Welt hinausreicht, sind die Einzelheiten, wo genau der Begriff entstanden ist, wahrscheinlich im Sand der Zeit verschwunden. Die militärische und politische Bezüge gegeben, kann es mit ihnen entstanden ( in erster Linie das Militär und seine Jargon Migration ( „Es scheint wahrscheinlich , dass" Kluges kam MIT über Alumni der vielen Militärelektronik - Projekte während des Krieges in Cambridge laufen (viele in Das ehrwürdige Gebäude 20 des MIT, in dem TMRC untergebracht war ... " ))
quelle
Legacy-Codebasis bezieht sich in der Regel nicht auf ein POS-System, sondern auf ein System, das in einer Codebasis vorhanden ist, oder auf ein System, das nicht mehr für die Neuentwicklung verwendet wird. Zum Beispiel unterstützt mein Team derzeit einige .NET 1.1- und 2.0-Anwendungen, die als Legacy-Code gelten. Wenn eine Änderung erforderlich wird, werden diese entweder umgeschrieben oder aktualisiert, um die neuesten Frameworks und Standards zu verwenden. Bis dahin verwalten wir sie als Legacy-Anwendungen, die weiterhin funktionieren müssen, aber keine Verbesserungen oder Code-Korrekturen implementieren.
Es gibt auch einige ältere Systeme, die wir überhaupt nicht unterstützen und die in VB6 und Classic ASP geschrieben wurden. Wir sind nicht in der Lage, diese Systeme zu unterstützen oder zu modifizieren. Solange sie jedoch weiterhin ausgeführt werden und keine Verbesserungen erforderlich sind, werden sie wahrscheinlich nicht aktualisiert. An keinem dieser Systeme ist etwas Besonderes auszusetzen. Sie erledigen ihre Arbeit so, wie sie es sollen, und abgesehen davon, dass sie von Mitte bis Ende der 90er Jahre wie eine App aussehen, haben sie keine größeren Probleme.
Legacy bedeutet also nicht, dass POS nur ein System ist, das in einer früheren Technologie oder Sprache erstellt wurde, die nicht den aktuellen Standards entspricht. Einige Legacy-Systeme sind als POS-Systeme zu qualifizieren, vor allem, weil ihnen die heute existierenden Entwicklungsmethoden für verwalteten Code und die über 15-jährige Erfahrung der erfahrenen Webcodierer fehlten.
quelle
"Legacy-Code" ist ein Begriff, der von Marketingleuten verwendet wird, um diejenigen, deren Code alt ist (aber vermutlich gut funktioniert), dazu zu drängen, auf die neuesten, größten (und wahrscheinlich fehlerhafteren) Softwaresprachen und -techniken zu aktualisieren. Es ist eng mit dem "Legacy-System" verknüpft, das sich auf alte Hardware und Betriebssysteme bezieht, die einwandfrei funktionieren, sich aber nicht an das anpassen, was jetzt "politisch korrekt" ist (z. B. OpenVMS, IBM-System).
quelle
Der Begriff Legacy-Code stammt aus mindestens 1989, wie er von Glenn Everhart in comp.sys.amiga verwendet wird :
Ich habe früher in Google Books nachweislich nichts gefunden.
quelle