Krótka odpowiedź
Myślę, że to była rezygnacja z projektów oprogramowania przed OO. OO pomógł, dodając fundamentalnie krytyczną koncepcję - modelowanie świata rzeczywistego .
Pierwszym zorientowanym obiektowo językiem programowania była Simula w 1967 roku. Jednak w tamtym czasie rozwój oprogramowania w dalszym ciągu znajdował się w laboratoriach i większość paradygmatów była jeszcze bliższa obudowie sprzętowej .
W ciągu całej kolejnej dekady rozwoju oprogramowania dla aplikacji korporacyjnych rozwijały się inne aplikacje komercyjne, a rozwój oprogramowania w ogóle nastąpił przez całe lata siedemdziesiąte. Językami, które przetrwały do dziś w tym wieku (przed 1980 r.) Były C, Cobol, Fortran i podobne. Większość tych języków ma charakter proceduralny. Od tego czasu istniała także Lisp - nie jestem jednak pewien, czy był to wybitny język ogólnego przeznaczenia dla rozwoju komercyjnego. Słynny termin model Wodospad powstał również we wczesnych latach siedemdziesiątych.
W większości środowisk komercyjnych najważniejszym elementem pojawiającym się w rozwoju oprogramowania było zarządzanie projektami. Istnieje pilna potrzeba napiętych i przynajmniej przewidywalnych budżetów oraz zarządzania wymaganiami w celu zamrożenia, aby projekt osiągnął linię mety odpowiednio. W tym okresie był także jednym z mitycznych Manmonthów w 1975 roku.
Wydaje mi się, że pod koniec lat 70. ludzie zostali wypaleni - ponieważ języki proceduralne nie dotrzymały obietnic. I nowy paradygmat Zorientowany obiektowo, który istniał od tego czasu, uczynił go wielkim. Chociaż ludzie mogą się nie zgadzać, myślę, że C ++, który pomaga w znajomości i sprawdzonym doświadczeniu, oraz C, a także obietnica orientacji obiektowej (pierwotnie z nazwą C z klasami) w 1983 roku była kamieniem węgielnym sukcesu programowania obiektowego.
Niektóre odniesienia dla większej perspektywy - http://journal.thedacs.com/issue/43/88
Dlaczego więc OO?
Myślę, że tamte dni (jeśli spojrzysz na punkt widzenia sukcesu projektu) - miało sens, że lepiej zrozumiesz to, co możesz lepiej zrozumieć. Metodologia obiektowa z obietnicą „… wszystko w życiu jest przedmiotem” wydawała się bardziej zdrowa, nawet zanim okazała się znacząca. Praktycznym sukcesem tego czynnika było samo wyobrażenie o wystarczającym wymodelowaniu rzeczywistego świata i problemu przed skokiem z pistoletu - co, jak sądzę, jest czymś zasadniczo nowym, co oferuje OO, czego nie oferował żaden inny paradygmat do tej pory. I zdecydowanie, biorąc pod uwagę, że ten paradygmat zmusił cię do myślenia, zanim kodujesz więcej niż języki proceduralne, pokazał widoczny sukces w zastosowanych projektach oprogramowania i od tego czasu się przyzwyczaił!
EDIT
Dodałbym również, że języki programowania ewoluowały jednocześnie równolegle do tak podstawowych pojęć (paradygmat OO, Aspekt, Maszyny wirtualne). Każda nowa koncepcja i nowe myślenie pojawiło się dopiero, gdy opanowały ją nowe języki programowania - zachowaj tylko znajomość, ale zmień podstawy z rdzeń! Jednocześnie - nowa koncepcja i nowe języki pojawiły się tylko z powodu nowych problemów biznesowych. Lata 80-te - OO dla oprogramowania na dużą skalę, 1990 Java w dobie Internetu, PHP / ASP i wiele innych dla sieci. Innowacje w językach programowania były również napędzane głównie przez nieciągłe potrzeby rynku.
Podsumowując, wczesne lata 80-te były epoką, w której rozpoczęło się komercyjne oprogramowanie na większą skalę - podczas gdy projekty z językami proceduralnymi miały swoje problemy, OO pokazało lepsze światło i sprawiło, że projekty odniosły większy sukces.