Kurze Antwort
Ich denke, es war die Abwanderung von Softwareprojekten vor OO-Tagen. OO half durch das Hinzufügen des grundlegend kritischen Konzepts - Modellieren Sie die reale Welt .
Die erste objektorientierte Programmiersprache war Simula im Jahr 1967. Zu dieser Zeit befand sich die Softwareentwicklung im Allgemeinen jedoch noch in den Labors und die meisten Paradigmen waren noch näher am Hardware- Fall.
Über ein ganzes weiteres Jahrzehnt wuchs die Entwicklung von Software für Unternehmensanwendungen, andere kommerzielle Anwendungen und die Softwareentwicklung insgesamt nahm in den gesamten 1970er Jahren zu. Sprachen, die bis heute in jenen Jahren (vor 1980) überlebt haben, waren C, Cobol, Fortran und ähnliche andere. Die meisten dieser Sprachen sind prozedural. Lisp gab es auch seit diesem Tag - ich bin mir jedoch nicht sicher, ob dies eine der wichtigsten Allzwecksprachen für die kommerzielle Entwicklung war. Der berühmte Begriff Wasserfallmodell wurde auch in den frühen 1970er Jahren geprägt.
In den meisten kommerziellen Umgebungen war das Projektmanagement das wichtigste Element in der Softwareentwicklung. Es war dringend erforderlich, knappe und zumindest vorhersehbare Budgets und Verwaltungsanforderungen einzufrieren, um sicherzustellen, dass das Projekt die Ziellinie ordnungsgemäß erreicht. In dieser Zeit war auch einer der Mythical Manmonths im Jahr 1975.
Ich glaube, Ende der 70er Jahre waren die Leute ausgebrannt - da die Verfahrenssprachen diese Versprechen nicht einhielten. Und ein neues Paradigma, das objektorientiert ist und seitdem existiert, hat es groß gemacht. Auch wenn die Leute anderer Meinung sein mögen, denke ich, dass das C ++, das die Vertrautheit und nachgewiesene Erfahrung mit C fördert, und das Versprechen der Objektorientierung (ursprünglich mit dem Namen C with Classes) aus dem Jahr 1983 ein Eckpfeiler für den Erfolg der objektorientierten Programmierung waren.
Einige Hinweise für mehr Perspektive - http://journal.thedacs.com/issue/43/88
Warum also OO?
Ich denke, in jenen Tagen (wenn Sie sich die Perspektive des Projekterfolgs ansehen) hat es Sinn gemacht, dass das, was Sie besser verstehen können, besser handhabbar ist. Objektorientierte Methodik mit dem Versprechen "Alles im Leben ist ein Objekt" schien mehr wie gesunder Menschenverstand zu sein, noch bevor sich herausstellte , dass es sinnvoll ist. Der praktische Erfolg dieses Faktors war der Gedanke, die reale Welt und das vorliegende Problem ausreichend zu modellieren, bevor man die Waffe springt - was meiner Meinung nach etwas grundlegend Neues ist, das OO angeboten hat, das bis zu diesem Zeitpunkt kein anderes Paradigma bot. Und auf jeden Fall, da dieses Paradigma Sie gezwungen hat, etwas nachzudenken, bevor Sie mehr als nur prozedurale Sprachen codieren , hat es sichtbaren Erfolg bei den eingesetzten Softwareprojekten gezeigt, und seitdem haben sie sich durchgesetzt!
BEARBEITEN
Ich möchte auch hinzufügen, dass sich Programmiersprachen parallel zu solchen grundlegenden Konzepten (OO-Paradigma, Aspekt, virtuelle Maschinen) gleichzeitig entwickelten. Jedes neue Konzept und jedes neue Denken entstand erst, als eine neue Programmiersprache es beherrschte - nur Vertrautheit bewahren, aber Grundlagen ändern Ader! Gleichzeitig sind dieses neue Konzept und die neuen Sprachen erst aufgrund neuer geschäftlicher Probleme entstanden. 1980er Jahre - OO für große Software, 1990 Java im Internetzeitalter, PHP / ASP und viele andere für das Web. Innovationen in den Programmiersprachen wurden auch hauptsächlich durch die diskontinuierlichen Marktbedürfnisse vorangetrieben.
Zusammenfassend war Anfang der 80er Jahre das Zeitalter, in dem größere kommerzielle Software auf den Markt kam - während Projekte mit prozeduralen Sprachen ihre Probleme hatten, zeigte OO das bessere Licht und machte Projekte erfolgreicher.