Geschichte der IT. OOP

Mein vorheriger Artikel „ Geschichte der IT. Als Computer groß waren ... “endeten wir Ende der 1980er Jahre, als zwei bedeutende Ereignisse passierten. Zunächst gab es OOP und die Objektsprache C ++ . Und zweitens tauchten PCs auf , was die Aufgaben der IT-Entwicklung grundlegend veränderte.



Und der Punkt hier ist nicht, dass es möglich wurde, Computer zu Hause zu halten und Arbeitsaufgaben an ihnen auszuführen: Texte bearbeiten, Berechnungen durchführen, Zeichnungen erstellen. Die Software dafür unterscheidet sich nicht grundlegend von der für große Computer - sie wussten, wie man sie entwickelt. Die einzige Frage war die Optimierung und Anpassung an begrenzte Ressourcen.



Die wichtigste Änderung besteht darin, dass PCs kleinen Unternehmen Computer zur Verfügung gestellt haben. Es waren Geschäftsprozessautomatisierungssysteme erforderlich, die in verschiedenen Unternehmen sehr unterschiedlich sind. Es ist schwierig, ein typisches System herzustellen: Jetzt existieren solche Systeme bereits, zum Beispiel 1C, aber zu diesem Zeitpunkt existierten sie nicht. OOP half, dieses Problem zu lösen. Diesen Teil der Geschichte der IT-Entwicklung und die Konzepte, die damals erschienen sind und noch verwendet werden, werde ich in diesem Artikel erläutern.



Die Entstehung von OOP



, - - () .



. , 1960-. , : (1960), 1967 , , 1972 Smalltalk. , : , , Smaltalk , .



? . , . , , . (2010-) : Erlang, . Smaltalk . ++, , , .



, , . , . , 1979-1986 C++. , Objective-C (1982), , Eiffel (1985) design by contract, .



, , , , , , . , . , , , . , « », ++ .



: , , . , , . IT- , , - .



« » . , , , . , . , . -, – , , , . , , , . , – , C, «» .



, , 1976 « + = » . 1980- ++, , .



, , . ++ , , , - . , , , ++, , , . , , .



…



, C++ . — . , , .



, , . – SOLID. . SOLID , , . , -, , , - , . - , , - , . .



? , , .

, – . , , . , , , , , .



– , . , if , else if . switch, , default . , , , , junior- . – , .



: -



, - . . – , . , , .



-. 1990- . - . - , - : Object-oriented programming Object-oriented analysis and design.



UML (Unified Modelling Language), , , . . , , , . , :



– ?

– .



1990- Rational Software – , , . .



UML. , , – Object Management Group (OMG), .



. 1997 UML Distilled, UML , , .



UML : , . , . , , -, (1960-) ( ) ER-, .



-



. - , , . .

, , , . 90-95% – « ».



100 , 5-10 . 10000 , 500-1000, . 50 , . , , , -. - . . , SAP, , .



, , , . know-how, , . know-how , , . 1C , , , -, , -. – , . .



, 90- – . , . , , . – 64 , , : , , . , , 128 .



-



- , , -, . , , , , .



UML, , , . -, , , .

, - . – .



, . , . , -, UML . , , - .



. , , , , . , , – , – , . , , – . , – - , - , – . , . , , , , UML.



: ?



, . -, , . , 90-, - - , , , , . , , .



, , , -. , , , , , , , . . , – , , , . .



, . . - , , , , .



, , . , , .



, – . , , , . – . , .



, , , , , , , C++ . IT, , – - .



, , , IT, . , IT.



, , , , , , . , " ", "", " " .



— , ( ), , , .



, , , , — " " " " , - . , , , " ", "".





, SAP 1C, , , , . . – , 90-, , - .



« », . , , . , , , .



«Patterns of Enterprise Application Architecture» ( – ), . , – . , Record Set Transaction Script.



, , . , , , , . , , .



, , , , . , . .



? . 2010-, public web, NoSQL , . . , , PostgreSQL NoSQL , NoSQL , SQL-. , , .



, , , , , – . – ORM, Object Relational Mapper. 90- . , , , . -, , , . .



C# 2008 , . .



, , . , , . , , . , , , – , , . , , , .



, , : , , .



: ORM



, . 2000- . , - . - , , .



web-, enterprise- – , , , , web, -. .Net, , Delhi Java- .



, Oracle, PL/SQL . . , , . Oracle, , . PL/SQL, , . .



. . : , . : , linq, .



2003 , -. . , , , , .



Domain Driven Design



Domain Driven Design (DDD), . 2003, 2010 «- ». 2006 « DDD », , 2007. , , , DDD .





? -, . , , , , . : -, , -, . , (Ubiquitous Language), . , .



, , - , , , . , -, .



, , , , . , , . , , , . , inhouse-, , Agile- . , , . Agile , , . .



DDD . , , . : , - , , . , , , , , , .



, , .



.





, , DDD . . -, -, SAP, 1 - , DDD. , . . , -, , , , . , , . , , , , .







, , – (bounded context). , . , , , (context map).



, , . , — , , . . , «» , , . , , .





, , « ». , . DDD « - », . WIAD-2019 « — ».





DDD , , . 2011 AgileDays « — Agile-» Application Developers Days « . CUSTIS».



, , , . Rich Object , . , , . . DDD- , .



, . , , . - , DDD Rich Object. , , - , . , , . « », «DDD: » Software People-2013, .



Domain Driven Design , . WIAD-2020 «Domain-driven design: ». . , .



. IT public web, -, enterprise-. , .



, . . Java Script. , , . – .




All Articles