Trước tiên, hãy thử thiết lập một dòng thời gian:
- 1963 - Bảng vẽ phác thảo của Ivan Sutherland được coi là một tác phẩm tiên phong trong cả định hướng đối tượng và GUI.
- 1967 Simula xuất hiện, và liệu nó hay Smalltak nên được coi là ngôn ngữ hướng đối tượng đầu tiên vẫn còn là vấn đề tranh luận.
- 1969 - Dennis Ritchie bắt đầu phát triển C .
- Năm 1972 - Smalltalk , một ngôn ngữ chịu ảnh hưởng nặng nề của Simula, xuất hiện. Đó là đứa con tinh thần của Alan Kay, người thường được coi là người phát minh ra thuật ngữ "hướng đối tượng" (Alan Kay cũng lấy cảm hứng từ nhân vật cùng tên trong Tron ;).
- 1979 - Bjarne Stroustrup bắt đầu làm việc trên C với Classes, tiền thân của C ++ .
- 1983 - Mục tiêu C xuất hiện và về cơ bản là một nỗ lực để thêm hương vị của định hướng đối tượng của Smalltalk vào C.
- 1985 - Object Pascal xuất hiện và gần như ngay lập tức được phổ biến bởi Turbo Pascal 5.5.
- 1986 - Công việc bắt đầu trên CLOS , một nỗ lực để đưa định hướng đối tượng đến Common Lisp.
- 1991 - Visual Basic được phát hành.
- 1995 - Java được phát hành.
- 1995 - Delphi được phát hành.
Ảnh hưởng chính của Ritchie là BCPL và ALGOL (cả hai đều là ngôn ngữ bắt buộc) và C được tạo ra vào thời điểm cách tiếp cận đối tượng của Simula và Smalltalk chưa được biết đến. Nó được hoàn thành vào khoảng năm 1972 và C với Classes xuất hiện chỉ 7 năm sau đó, với cả Dennis Ritchie và Brian Kernighan đều tham gia vào sự khởi đầu của nó :
Vào thời điểm đó, tôi coi C là ngôn ngữ lập trình hệ thống tốt nhất hiện có. Điều đó không rõ ràng sau đó (1979) như sau này, nhưng tôi đã có các chuyên gia như Dennis Ritchie, Steve Johnson, Sandy Fraser, Greg Chesson, Doug McIlroy và Brian Kernighan từ hành lang mà tôi có thể tìm hiểu và nhận phản hồi. Nếu không có sự giúp đỡ và lời khuyên của họ, và nếu không có C, C ++ sẽ chết non.
Trái với những tin đồn lặp đi lặp lại, tôi không bao giờ được nói rằng tôi phải sử dụng C; Tôi cũng không bao giờ được bảo là không sử dụng C. Trên thực tế, hướng dẫn sử dụng C ++ đầu tiên đã phát triển từ nguồn troff của hướng dẫn sử dụng C mà Dennis đưa cho tôi. Nhiều ngôn ngữ mới được thiết kế tại phòng thí nghiệm Bell; trong "Nghiên cứu" ít nhất, không có quy tắc nào bắt buộc sự cố chấp ngôn ngữ.
Mục tiêu C xuất hiện 11 năm sau đó, cả nó và C ++ đều là những nỗ lực lớn và thành công để đưa định hướng đối tượng đến C. Khoảng cách có vẻ lâu nay, nhưng tôi không nghĩ rằng nó đặc biệt dài vào thời điểm đó, hãy nhớ rằng chúng ta đang nói chuyện về một kỷ nguyên trước World Wide Web. Năm 1993, khi Mosaic (trình duyệt đầu tiên) xuất hiện là một bước ngoặt trong ngành. Java và Delphi, được phát hành một vài năm sau đó, có lợi thế rất lớn so với người tiền nhiệm của họ, ít nhất là về mức độ phổ biến. Web cũng là một trong những nền tảng Sun đã được nhắm mục tiêu với họ lời hứa Wora , có lẽ là một quan trọng hơn vào thời điểm đó, và Java được rất nhiều thị trường như các ngôn ngữ cho nền tảng sau đó mới được sinh ra.
Một yếu tố quan trọng khác là vào cuối những năm 1980 và đầu những năm 1990 là thời điểm GUI bắt đầu trở nên phổ biến, đặc biệt là điện toán gia đình, đồng thời phần cứng ngày càng rẻ hơn. Định hướng đối tượng là một mô hình cực kỳ thuận tiện khi phát triển GUI và các ứng dụng hướng đồ họa nói chung và Turbo Pascal, Delphi, Visual Basic và (có lẽ là mở rộng ít hơn) Java đã được ca ngợi (tại thời điểm đó) vì sự đơn giản mà chúng mang lại cho phát triển GUI.
Tiếp thị Java mạnh mẽ của Sun rõ ràng cũng đóng một vai trò, tuy nhiên vì tôi vẫn nhớ rất rõ tương tác đầu tiên của mình với nó, tôi chắc chắn không ấn tượng. Phản ứng đầu tiên của tôi đối với Java là "hm, không gì khác hơn là một tài nguyên đói đã giải thích C ++, tôi sẽ gắn bó với Turbo Pascal, cảm ơn rất nhiều" (hey, lúc đó tôi chỉ mới 17 tuổi;). Tôi không biết bất kỳ ai khác đã phản ứng với Java vào thời điểm đó, nhưng đối với tôi đó chỉ là một mốt nhất thời và tôi nhanh chóng chuyển sang Delphi (và Visual Basic, thở dài), và chỉ bắt đầu sử dụng Java vài năm sau đó, ở trường đại học và chỉ bởi vì đó là một khóa học bắt buộc.
Mặc dù đúng là Java và hương vị của hướng đối tượng, trở nên phổ biến cực kỳ nhanh chóng, tôi thực sự không nghĩ rằng mô hình này không phổ biến trước giữa những năm 1990, việc giới thiệu web đã thay đổi định nghĩa về mức độ phổ biến của chúng tôi. Trong mọi trường hợp, giữa những năm 1990 là thời điểm mà sự phát triển phần mềm nói chung có sự phổ biến, với web, sự phổ biến của GUI và phần cứng rẻ hơn là những yếu tố chính. Java chỉ đơn giản là ở đúng nơi vào đúng thời điểm.
Đọc thêm:
Câu hỏi liên quan: