Java - История создания

Значение Java cегодня

Java - (на момент написания данной заметки) - один из самых популярных языков программирования (в ряде версий рейтингов - самый популярный). Пожалуй, это основная причина по которой его стоит изучать =)

По мнению части программистов имеет концептуальную схожесть с C# (который, вообще говоря, многое вобрал в себя из Java) - опять же - тоже очень популярным языком программирования, а такая схожесть облегчает переход с одного языка на другой, потому выучив Java, вы значительно проще освоите и C#.

По мнению Герберта Шилдта основная причина успеха Java - его быстрое развитие от версии к версии и "способность" (естественно, благодаря разработчикам) быстро подстраиваться под современные нужды программистов.

История создания. Начало

Всё началось в 1991 году, когда группа инженеров из компании Sun (кстати, именно в этой компании появился другой знаковый проект - MySQL) под руководством Патрика Нотона и Джеймса Гослинга занялась разработкой небольшого языка, который можно было бы использовать для программирования бытовых устройств, например, контроллеров для переключения каналов кабельного телевидения.

Поскольку такие устройства не потребляют много энергии и не имеют больших микросхем памяти, то язык должен был быть маленьким и генерировать очень компактные программы. Кроме того, поскольку разные производители могут выбирать разные центральные процессоры , было важно не завязнуть в какой-то одной архитектуре компьютеров - то есть, вообще говоря, обеспечить "выполняемость" программ, написанных на данном языке на разных "железках". Проект получил кодовое название "Green".

Идея от Pascal =)

Стремясь изобрести небольшой, компактный и машинонезависимый код, разработчики возродили модель, использованную при реализации первых версий языка Pascal заре эры персональных компьютеров. Никлаус Вирт, создатель языка Pascal, в свое время разработал машинонезависимый язык, генерирующий промежуточный код для некоей гипотетической машины.

Этот язык стал коммерческим продуктом под названием UCSD Pascal. (Такие гипотетические машины часто называются виртуальными — например, виртуальная машина языка Java, или JVM.)
Этот промежуточный код можно выполнять на любой машине, имеющей соответствующий интерпретатор. Инженеры, работавшие над проектом "Green", также использовали виртуальную машину, что решило их основную проблему.

Идея от C++

Но сотрудники Sun имели опыт работы с UNIX и вообще - знали, что такое "промышленная разработка", потому в основу синтаксиса Java они положили C++, а не Pascal. В частности, они сделали язык объектно-, а не процедурно-ориентированным.

Название - почему и от чего

Сначала Джеймс Гослинг решил назвать его "Oak" = "Дуб" (первая реализация имела место в 1992 году) - возможно потому, что он любил смотреть на дуб, растущий прямо под окнами его офиса в компании Sun.
java дуб изображение

Однако потом сотрудники компании Sun узнали, что слово Oak уже используется в качестве имени ранее созданного языка программирования, и в 1995 изменили название на Java (также некоторые легенды сообщают, что Java вроде как звучит ярче и маркетологи посоветовали изменить название).

Язык назван в честь марки кофе Java, которая, в свою очередь, получила наименование одноимённого острова (Ява), поэтому на официальной эмблеме языка изображена чашка с парящим кофе:
ява история создания эмблема

Существует и другая версия происхождения названия языка, связанная с аллюзией на кофе-машину как пример бытового устройства, для программирования которого изначально язык создавался.

Рассвет =)

Одним из главных факторов "обнаруживаемости" Java в первых версиях (по мнению Г. Шилдта) был взрывообразный рост популярности сети Интернет - и, как следствие, появления потребности создания платформонезависимых приложений.

В 1993 разработчик Java (тогда ещё Oak - почему см. выше) понимают, что Интернет, как и микроволновки (и кофемашины) требует кроссплатформенности - и взялись за дело. Именно Интернет обеспечит в дальнейшем успех Явы в мире программистов и, как следствие, - пользователей.

Влияние на интернет

Java предлагает переложить ряд "обязанностей" с сервера на клиент с помощью использования апплетов, которые выполняются во внутренней среде Java и, таким образом, контролируется доступ к иным данным на машине клиента (в целях обеспечения безопасности).

Затем появляются так называемые сервлеты - Java начинает оккупировать сервера, становясь всё более "универсальной" - вот-вот и на ней и впрямь начнут программировать электрические чайники! (обычное уже давно программируют =)

Мобильные люди

Далее - наступает эра распространения мобильных устройств, разработчики помнят о своей мечте - а потому не могут упустить их ,ещё до массовых продаж мобильных с полноценной ОС, Java начинает распространятся по карманом пользователей - позволяя играть в игры, и лазить в интернет с помощью упрощённых ("легковесных") браузеров - эта тенденция не ослабевает и с выходом смартфонов (в том числе на Android), хотя, правда, появляется возможность писать и на других языках.

Особенности устройства Java - движемся дальше

Самое время рассказать о том как работают программы на Java

Приложение

Таблица - развития языка от версии к версии

Версия     Количество классов и интерфейсов   Количество методов и полей

1.0        212                                2125

1.1        504                                5478

1.2        1781                               20935	

1.3        2130                               23901
	
1.4        3020                               32138

Источники

  1. История языка Java: http://java-study.ru/java-uchebnik/3-jav...
  2. История возникновения Java: osp.ru/jw/13032038/