Begriffe wie "Spaghetti Code" und "Single Point of Exit" sind Rückschläge in diese Zeit. Heutzutage nennen wir Code, den wir nicht als "Spaghetti-Code" bezeichnen, aber das ist wirklich ein Hinweis auf Code, der (schlecht) mit GOTOs und JMPs verbunden ist.
(Heute leiden wir unter "Ravioli-Code", in dem der Code wie ein Bündel nicht verwandter, dicht gepackter Klassen ist, ähnlich wie ein Teller Ravioli. Einige OO-Experten fragen jedoch zu Recht: "Aber ist es nicht das, was OO soll aussehen wie?")
"Single Point of Exit" ist heutzutage nur ein frustrierender Refactoring-Roadbump. Viele Entwickler, mit denen ich gesprochen habe, haben noch nicht einmal davon gehört und sind entsetzt, wenn ich es erkläre. Aber früher hieß es, nicht plötzlich aus einem Codeblock in Spaghetti-Code zu springen. Springe vorwärts zum Ende der Logik und verlasse sie dann mit Anmut.
Ich erinnere mich immer wieder daran, dass die Idee, Code in Prozeduren zu bündeln, ein großer Fortschritt war. Die Idee, Prozeduren in interoperable, wiederverwendbare Module zu packen, war eine Art Heiliger Gral der Programmierung.
BEARBEITEN: "Selbstmodifizierender Code" war auch ein Muster, das insbesondere im ursprünglichen Doom verwendet wurde. Dort würde das Programm seine Anweisungen tatsächlich mit schnelleren Anweisungen überschreiben, die auf seinem Status basieren. Als ich ein Typ war, der einen Programmierkurs im Science Museum belegte, warnte mich mein Ausbilder streng: "Schreiben Sie keinen selbstmodifizierenden Code!"
BEARBEITEN BEARBEITEN: Vor dem Internet verbreitete sich das Wort jedoch viel langsamer. Die Idee, Algorithmen und Datenstrukturen zu implementieren, war früher viel wichtiger. Heute sortiere ich die ganze Zeit, ohne zu wissen, welche Sorte ich benutze. Aber damals musste man es selbst verschlüsseln. Ich erinnere mich an einen Artikel über Programmierherausforderungen, die früher Tage in Anspruch nahmen, die wir heute in einer halben Stunde oder weniger überwunden haben. Wahrscheinlich würde die wirklich bewusste "algorithmische" und "Datenstruktur" -Programmierung auf der Liste stehen, viel mehr als heute.