В начале 1990-х разработчики из компании Sun Microsystems начали работать над языком под названием Oak. Новый язык должен был найти применение в отрасли бытовой техники, широко распространенных тогда видеомагнитофонах, тостерах и т.д.
Для этого новый язык должен был стать:
- кроссплатформенным (поддерживаться различными платформами);
- надежным;
- компактным.
Но скоро развитие Internet и сетей заняло первое место на рынке, поэтому компания Sun сменила приоритеты, и новый язык получил название Java.
Java базируется на языках C и C++, взяв синтаксис из первого, а особенности объектно-ориентированного подхода — из второго.
Релиз первого написанного на Java браузера (HotJava) состоялся в 1994 г. Он был создан с целью ускорить разработку программ и показать весь возможный потенциал нового языка.
Java развивался так же быстро, как и Internet, и, благодаря этому, занял ведущие позиции в списке языков, предназначенных для работы с сетью, на нем писалось большинство приложений для браузера и пользователей.
Но самые первые версии Java были во многом недоработаны и не отвечали в полной мере запросам пользователей, когда дело касалось написания клиентских приложений. К примеру, графика в Java 1.0 во многом уступала графике приложений, написанных на C и C++.
Однако Java стал очень распространен для написания приложений типа интерактивной памяти или же для написания программ на платформы сотовых телефонов и карманных компьютеров.
Концепция языка
Java является объектно-ориентированным языком программирования, в нем полностью отсутствует понятие процедуры. Java рассчитан на решение тех же проблем, что и остальные языки, с его помощью можно решить большой круг задач. Программы, которые можно написать на Java, подразделяются на два типа:
- Приложения — программа, находящаяся и выполняющаяся непосредственно на компьютере пользователя (для ее выполнения необходим интерпретатор Java);
- Апплеты — программы, работающие с Java в браузере. Для их успешной работы необходима поддержка Java в браузере.
Java является и интерпретируемым, и компилированным языком одновременно. Интерпретируемый язык — такой язык программирования, в котором код не переводится в машинный, а выполняется специальной программой, называемой интерпретатором. Компилируемый язык — язык, в котором код переводится в машинный и исполняется самой операционной системой.