Ich habe diese Frage gelesen und darüber nachgedacht. Objektorientierte Sprachen. Ich bin mir nicht sicher, wann die erste entstanden ist, aber warum hat es so lange gedauert, bis sie zum Mainstream wurden?
- C wurde sehr populär, wurde aber jahrelang (Jahrzehnte?) Später nicht zum objektorientierten C ++
- Vor den 90er Jahren war keine gängige Sprache objektorientiert
- Objektorientiert schien sich mit Java und C ++ ungefähr zur gleichen Zeit zu entwickeln
Nun, meine Frage, warum hat das so lange gedauert? Warum wurde C ursprünglich nicht als objektorientierte Sprache konzipiert? Die Verwendung einer sehr kleinen Teilmenge von C ++ hätte die Kernsprache nicht wesentlich beeinflusst. Warum war diese Idee also erst in den 90er Jahren populär?
Antworten:
Versuchen wir zunächst, eine Zeitleiste zu erstellen:
Ritchies Haupteinflüsse waren BCPL und ALGOL (beide sind imperative Sprachen), und C wurde zu einer Zeit entwickelt, als Simulas und Smalltalks Herangehensweise an die Objektorientierung noch nicht bekannt war. Es wurde um 1972 fertiggestellt und C with Classes erschien nur 7 Jahre später, wobei sowohl Dennis Ritchie als auch Brian Kernighan an seiner Gründung beteiligt waren :
Objective C erschien 11 Jahre später, und sowohl it als auch C ++ waren wichtige und erfolgreiche Bemühungen, um die Objektorientierung auf C zu bringen. Die Lücke mag jetzt lang erscheinen, aber ich denke, es war zu der Zeit nicht besonders lang, denken Sie daran, wir reden über eine Ära vor dem World Wide Web. 1993, als Mosaic (der erste Browser) erschien, war ein Wendepunkt in der Branche. Java und Delphi, die einige Jahre später veröffentlicht wurden, hatten einen enormen Vorteil gegenüber ihren Vorgängern, zumindest in Bezug auf die Popularität. Die Bahn war auch eine der Plattformen Sun wurde gezielt mit ihren WORA Versprechen , vielleicht wichtigeren zu der Zeit, und Java wurde stark wie vermarktet die Sprache für die damals neu geboren Plattform.
Ein weiterer Schlüsselfaktor ist, dass in den späten 1980er und frühen 1990er Jahren GUIs immer beliebter wurden, insbesondere im Heimcomputer, während gleichzeitig die Hardware immer billiger wurde. Die Objektorientierung ist ein äußerst praktisches Paradigma bei der Entwicklung von GUIs und grafikorientierten Anwendungen im Allgemeinen, und Turbo Pascal, Delphi, Visual Basic und (vielleicht in geringerem Umfang) Java wurden (zu dieser Zeit) für die Einfachheit der GUI-Entwicklung gelobt.
Die aggressive Vermarktung von Java durch Sun spielte natürlich auch eine Rolle, aber da ich mich noch genau an meine erste Interaktion damit erinnere, war ich definitiv nicht beeindruckt. Meine erste Reaktion auf Java war "hm, nichts weiter als ein ressourcenhungriger interpretierter C ++, ich bleibe bei Turbo Pascal, vielen Dank" (hey, ich war damals erst 17;). Ich weiß nicht, wie andere zu dieser Zeit auf Java reagierten, aber für mich war es nur eine Modeerscheinung, und ich wechselte schnell zu Delphi (und Visual Basic, seufz) und begann erst ein paar Jahre später im College mit Java Und nur, weil es ein Pflichtkurs war.
Java und seine Objektorientierung werden zwar sehr schnell populär, aber ich glaube nicht, dass das Paradigma vor Mitte der neunziger Jahre ziemlich populär war. Die Einführung des Webs hat unsere Definition der Popularität geändert. Auf jeden Fall war Mitte der 1990er Jahre eine Zeit, in der die Softwareentwicklung allgemein einen rasanten Aufschwung erlebte, wobei das Internet, die Verbreitung von GUIs und billigere Hardware die Schlüsselfaktoren waren. Java war einfach zur richtigen Zeit am richtigen Ort.
Weitere Lektüre:
Verwandte Fragen:
quelle