Autor filmu ma pewne pojęcie o obiektówce, ale wydaje mi się, że źle interpretuje zasady nim rządzące.
Swoją drogą skupił się głównie na omawianiu wad rozwiązania obiektowego, ale chciałbym zobaczyć równie długie rozważania o programowaniu proceduralnym.
Na świecie w instytucjach rządowych były zebrania na temat wprowadzania rozwiązań obiektowych w systemach. Trzeba wiedzieć, że to nie jest takie widzimisię, że taki paradygmat powstał.
Generalnie istnieją 3 paradygmaty: proceduralny, obiektowy, funkcyjny. Jeszcze rodzi nam się czwarty - aspektowy. Każdy z nich ma swoje zastosowanie w różnych sytuacjach. Nie potrzeba pełnej znajomości oop solidów agile i innych tdd do stworzenia sterownika PLC dla zespołu maszyn. Nauka obiektówki do takich celów mija się z celem.
Nazywając podstawowe cechy i zasady programowania obiektowego plastrami na poranione dziecko (parafrazuję bo nie pamiętam jak to nazwał dokładnie) to trochę przesadza.
Prawda jest taka, że świat tak przyjął obiektówkę, bo jest ona zrozumiała i elastyczna dla obu stron medalu. Biznes może modelować na tym na czym rozumie - na makietach rzeczywistego świata. Może tworzyć diagramy dziedziczenia, diagramy przepływu danych, diagramy zdarzeń, akka, user stories, use cases. To narzędzie tak uniwersalne, że klient może nawet sam nauczyć się tworzyć własne historyjki i przesyłać je do zespołu deweloperów.. Zespół ten po prostu przepisuje te założenia, generuje się kod speka i można zacząć robić. TO wszyskto jest banalne. Dlaczego? To jest najdojrzalszy sposób programowania w tej chwili. Najdojrzalszy - oznacza, że najdłużej ze wszystkich jest w fazie rozwoju. Procedury zostały porzucone w chwili nastania Simuli, Smalltalka, C++ a już ostatecznie w czasach Javy. Pozostał tylko jako zapchajdziura w szkołach. Od tamtych czasów powstały nardzędzia pomocne w organizowaniu wymagań i specyfikacji biznesu, powstały narzędzia w pełni zintegrowane z kodem projektu obiektowego. Skakanie po klasach, debugowanie. To wszystko jest stworzone obiektowo i z myślą o programowaniu obiektowym.
Możliwe, ze doczekamy się czasów, gdy to funkcyjne lub aspektowe stanie się paradygmatem dominującym. Osobiście uważam, że nadejdą czasy zatarcia się granic między językami - wystarczy spojrzeć na C# Jave PHP - niemalże identyczne. C++ zaczyna mieć możliwości innych języków obiektowych (ciekawe kiedy się pozbędzie plików obj). Javascript stał się niedawno językiem umożliwiającym tworzenie serwerów i pozwolił stworzyć takie cudo jak MongoDB.
Ludzie będą coraz mniej się kłucić o to, który język jest lepszy - zrozumieją w końcu, że wybrany język rozwiązuje wybrany problem. Przykładem jest aplikacja PHP połączona ze skryptami LUA do robienia w zawrotnej prędkości obliczeń.
Wiadomo, trudno jest zrozumieć każdy z paradygmatów programowania - każdy ma swoje zasady i powinno się ich trzymać a nie nazywać je łatami na dziury.