Câu trả lời ngắn
Tôi nghĩ rằng đó là khởi đầu của các dự án phần mềm trước ngày OO. OO đã giúp đỡ bằng cách thêm khái niệm cơ bản quan trọng - Mô hình thế giới thực .
Ngôn ngữ lập trình hướng đối tượng đầu tiên là Simula trở lại vào năm 1967. Tuy nhiên, vào thời điểm đó, việc phát triển phần mềm vẫn còn nhiều trong phòng thí nghiệm và hầu hết các mô hình vẫn gần với trường hợp phần cứng hơn .
Trong một thập kỷ phát triển phần mềm cho các ứng dụng doanh nghiệp, các ứng dụng thương mại khác đã phát triển và sự phát triển phần mềm đã tăng lên trong toàn bộ thập niên 1970. Các ngôn ngữ vẫn còn tồn tại đến ngày nay ở độ tuổi đó (trước năm 1980) là C, Cobol, Fortran và các ngôn ngữ tương tự khác. Hầu hết các ngôn ngữ này là thủ tục. Lisp cũng tồn tại kể từ ngày đó - tuy nhiên, tôi không chắc đó có phải là ngôn ngữ mục đích chung nổi bật để phát triển thương mại hay không. Thuật ngữ thác nước nổi tiếng cũng được đặt ra vào đầu những năm 1970.
Trong hầu hết các môi trường thương mại, yếu tố quan trọng nhất xuất hiện trong phát triển phần mềm là quản lý dự án. Có một nhu cầu rất lớn về ngân sách chặt chẽ và ít nhất là có thể dự đoán và các yêu cầu quản lý để đóng băng để đảm bảo rằng dự án đạt đến đích hoàn thành một cách tôn trọng. Trong thời kỳ này cũng là một trong những Manmonths huyền thoại trở lại vào năm 1975.
Tôi đoán cuối năm 70 người đã bị đốt cháy - vì các ngôn ngữ thủ tục không theo kịp những lời hứa đó. Và một mô hình đối tượng mới được định hướng từ thời đó đã làm cho nó trở nên lớn. Mặc dù mọi người có thể không đồng ý, tôi nghĩ rằng C ++ giúp làm quen và trải nghiệm đã được chứng minh và về C, và hướng Promise of Object (ban đầu với tên C với Classes) vào năm 1983 là nền tảng cho sự thành công của lập trình hướng đối tượng.
Một số tài liệu tham khảo để có thêm góc nhìn - http://journal.thedacs.com/su/43/88
Vậy tại sao OO?
Tôi nghĩ những ngày đó (nếu bạn nhìn vào quan điểm thành công của dự án) - điều đó có ý nghĩa rằng những gì bạn có thể hiểu rõ hơn sẽ được quản lý tốt hơn. Phương pháp hướng đối tượng với một lời hứa ".. mọi thứ trong cuộc sống là một đối tượng" có vẻ giống như là hợp lý ngay cả trước khi nó được chứng minh là có ý nghĩa. Thành công thực tế của yếu tố này là khái niệm đủ mô hình hóa thế giới thực và vấn đề trong tay trước khi nhảy súng - điều mà tôi nghĩ rằng một điều cơ bản mới mà OO đưa ra mà không có mô hình nào khác đưa ra cho đến ngày đó. Và chắc chắn rằng mô hình này buộc bạn phải suy nghĩ phần nào trước khi bạn viết mã nhiều hơn các ngôn ngữ thủ tục, nó cho thấy sự thành công rõ rệt trên các dự án phần mềm được sử dụng và kể từ đó họ bắt kịp!
EDIT
Tôi cũng sẽ nói thêm rằng các ngôn ngữ lập trình phát triển đồng thời song song với các khái niệm cơ bản như vậy (mô hình OO, khía cạnh, máy ảo,) Mỗi khái niệm mới và tư duy mới xuất hiện chỉ khi một ngôn ngữ lập trình mới làm chủ nó cốt lõi! Đồng thời - những khái niệm mới và ngôn ngữ mới chỉ xuất hiện vì những vấn đề kinh doanh mới. Những năm 1980 - OO cho phần mềm quy mô lớn, 1990 Java trong thời đại Internet, PHP / ASP và nhiều phần mềm khác cho web. Sự đổi mới trong ngôn ngữ lập trình cũng được thúc đẩy chủ yếu bởi nhu cầu thị trường không liên tục.
Tóm lại, đầu thập niên 80 là thời đại mà phần mềm thương mại quy mô lớn hơn cất cánh - trong khi các dự án với ngôn ngữ thủ tục có vấn đề, OO cho thấy ánh sáng tốt hơn và giúp các dự án thành công hơn.