Я прочитал этот вопрос, и это заставило меня задуматься о еще одной довольно недавней вещи. Объектно-ориентированные языки. Я не уверен, когда был создан первый, но почему прошло так много времени, прежде чем они стали мейнстримом?
- C стал чрезвычайно популярным, но не стал объектно-ориентированным C ++ в течение многих лет (десятилетий?) Спустя
- Ни один основной язык до 90-х не был объектно-ориентированным
- Похоже, что объектно-ориентированные приложения действительно взлетели с Java и C ++ одновременно.
Теперь мой вопрос, почему это заняло так много времени? Почему C изначально не задумывался как объектно-ориентированный язык? Принятие очень маленького подмножества C ++ не сильно повлияло бы на основной язык, так почему же эта идея не была популярна до 90-х годов?
Ответы:
Сначала попробуем установить временную шкалу:
Основными влияниями Ричи были BCPL и ALGOL (оба являются императивными языками), и C был создан в то время, когда подход Simula и Smalltalk к объектной ориентации еще не был хорошо известен. Это было завершено около 1972 года, и C с классами появился только 7 лет спустя, и Деннис Ричи и Брайан Керниган были вовлечены в его создание :
Цель C появилась 11 лет спустя, и она, и C ++ были крупными и успешными усилиями по привлечению объектной ориентации к C. Теперь этот разрыв может показаться долгим, но я не думаю, что он был особенно долгим в то время, помните, что мы говорим об эпохе до всемирной паутины. 1993 год, когда появился Mosaic (первый браузер), стал поворотным моментом в отрасли. Java и Delphi, выпущенные пару лет спустя, имели огромное преимущество перед своими предшественниками, по крайней мере, с точки зрения популярности. Веб также был одна из платформ Sun целился с их WORA обещанием , возможно , более важным в то время, и Java тяжело на рынке как на языке для затем новорожденной платформы.
Другим ключевым фактором является то, что в конце 1980-х и начале 1990-х годов графические интерфейсы стали популярными, особенно в домашних компьютерах, в то время как аппаратное обеспечение становилось все дешевле и дешевле. Ориентация на объекты является чрезвычайно удобной парадигмой при разработке графических интерфейсов и графически ориентированных приложений в целом, и Turbo Pascal, Delphi, Visual Basic и (возможно, в меньшей степени) Java хвалились (в то время) за простоту, которую они привели к разработке GUI.
Очевидно, что агрессивный маркетинг Sun Java также сыграл свою роль, однако, поскольку я до сих пор хорошо помню свое первое общение с ним, меня это точно не впечатлило. Моей первой реакцией на Java было: «Хм, не более чем истолкованный C ++ голодный ресурс, я буду придерживаться Turbo Pascal, большое спасибо» (эй, мне тогда было всего 17 лет;). Я не знаю, как кто-то еще отреагировал на Java в то время, но для меня это было просто увлечением, и я быстро перешел на Delphi (и Visual Basic, вздох), и начал использовать Java только несколько лет спустя, в колледже. И только потому, что это был обязательный курс.
Несмотря на то, что Java и ее разновидность объектной ориентации становятся очень популярными очень быстро, я не думаю, что эта парадигма не была достаточно популярной до середины 1990-х годов, но появление Интернета изменило наше определение популярности. В любом случае, середина 1990-х годов была периодом, когда разработка программного обеспечения в целом имела всплеск популярности, когда ключевыми факторами были Интернет, распространение графических интерфейсов и более дешевое оборудование. Ява была просто в нужном месте в нужное время.
Дальнейшее чтение:
Смежные вопросы:
источник