Язык программирования Java

Sun MicrosystemsОгромные перспективы и самые захватывающие возможности для разработчиков программного обеспечения лежат в обуздании силы сетей. Приложения, созданные сегодня, для каких бы целей и аудитории они ни планировались, почти непременно запускаются на машинах, связанных глобальной сетью компьютерных ресурсов. Возрастающая важность сетей предъявляет новые требования к существующим инструментам и заставляет быстро расти список абсолютно новых типов приложений. Мы хотим иметь программное обеспечение, которое работает стабильно на любой платформе, и которое хорошо сочетается с другими приложениями. Мы хотим иметь динамические приложения, которые используют преимущества Всемирной паутины, способны получить доступ к несоизмеримым и распределенным источникам информации. Мы хотим умные приложения, которые могут бродить по сетям вместо нас, разыскивая информацию и служа электронными агентами. Мы уже довольно давно знаем, какое программное обеспечение хотим, но в действительности мы стали получать его только в течение последних нескольких лет.

Исторически проблема заключается в том, что инструментов для создания таких приложений не хватает. Требования к скорости и портативности являются взаимоисключающими, а безопасность в большей степени игнорируется или не понимается. В прошлом действительно мобильные языки были громоздкими, интерпретированными и медленными. Своей популярностью они скорее обязаны высокому уровню функциональности, а не портативности. Многие языки обычно обеспечивали скорость, привязываясь к определенным платформам, так что они решали проблему портативности только наполовину. Существовало даже несколько безопасных языков, но они в основном были ответвлениями портативных, поэтому имели те же проблемы. Язык Java — это современный язык, который работает на трех фронтах: портативность, скорость и безопасность. Поэтому он является доминирующим языком в мире программирования более 18 лет.

Появление Java

Язык программирования Java, разработанный компанией Sun Microsystems под руководством светил Интернета Джеймса Гослинга (James Gosling) и Билла Джоя (Bill Jоу), был создан как машиннонезависимый язык программирования, который достаточно безопасен для сетевых применений и достаточно мощен, чтобы заменить родной исполняемый код. Язык Java решил проблемы, поднятые выше, и сыграл главную роль в развитии Интернета, результатом чего стало то, что мы видим сейчас.

Изначально энтузиазм в отношении Java был в основном сосредоточен на его возможностях создания встраиваемых приложений для Всемирной паутины, называемых апплетами. Но вначале апплеты и другие приложения для графических интерфейсов пользователя (GUI), написанные на Java, были очень ограниченными. Сегодня у Java есть Swing — один из самых изощренных наборов инструментов для создания GUI среди всех языков. Эта разработка позволила языку Java превратиться в популярную платформу для разработки традиционного клиентского прикладного программного обеспечения.

Что еще более важно, язык Java стал главной платформой для веб-приложений и сервисов. Эти приложения используют технологии, включающие Java Servlet API, веб-сервисы Java и много популярных коммерческих серверов приложений и фреймворков Java и серверов и фреймворков с открытым кодом. Портативность и скорость языка Java делают его платформой номер один для современных бизнес-приложений. Серверы языка Java, работающие на платформах Linux с открытым кодом, находятся сегодня в сердце делового и финансового мира.

Эта серия статей покажет вам, как использовать язык Java для выполнения реальных задач по программированию. В следующих статьях мы рассмотрим все от текстовых процессоров до создания сетей, создания многофункциональных клиентских приложений GUI при помощи набора инструментов Swing и легковесных веб-приложений и сервисов.

Происхождение языка Java

Семена Java были посеяны в 1990 году основателем и главным исследователем компании Sun Microsystems Биллом Джоем. В это время компания Sun конкурировала на относительно небольшом рынке рабочих станций, в то время как компания Microsoft начинала доминировать своими более массовыми персональными компьютерами с микропроцессорами Intel. Когда Sun упустила свой шанс в революции персональных компьютеров, Джой отступил в Аспен, Колорадо, для работы в перспективных исследованиях. Он придерживался идеи о выполнении сложных задач с использованием простого программного обеспечения и основал удачно названную компанию Sun Aspen Smallworks. Среди первых членов маленькой команды программистов, собравшихся в Аспене, Джеймса Гослинга запомнят как отца языка Java. Гослинг впервые прославился вначале 80-х как автор Gosling Emacs — первой версии популярного редактора Emacs, который был написан на языке С и работал под Unix. Редактор Gosling Emacs стал популярным, но вскоре его затмила бесплатная версия — GNU Emacs, написанная первым дизайнером Emacs. К тому времени Гослинг перешел к разработке системы NeWS компании Sun, которая какое-то время соперничала с системой Х Window System для управления рабочим столом с GUI на основе Unix в 1987 году. Хотя некоторые люди придерживаются точки зрения, что система NeWS предшествовала системе Х, NeWS проиграла, потому что компания Sun оставляла ее своей собственностью и не публиковала исходный код, в то время как первые разработчики Х сформировали Консорциум Х и использовали противоположный подход.

Билл Джой разработчик Java
Билл Джой

Разработка NeWS обучила Гослинга силе интеграции выразительного языка с GUI оконного типа, ориентированным на сети. Она также научила компанию Sun, что сообщество интернет-программирования, безусловно, отказывается принимать стандарты, защищенные правом собственности, какими бы хорошими они ни были. Семена лицензионной схемы языка Java и открытого кода (пусть даже и не с открытым источником) посеяны неудачей NeWS. Гослинг принес то, чему он научился, в рождающийся проект Билла Джоя в Аспене. В 1992 году работа над проектом привела к основанию корпорации FirsPerson, дочерней корпорации Sun. Ее миссией было вывести Sun в мир потребительской электроники.

Джеймс Гослинг
Джеймс Гослинг

Команда компании FirsPerson разрабатывала программное обеспечение для информационной бытовой техники, такой как мобильные телефоны и карманные персональные компьютеры (PDA). Целью было обеспечить переход информации и приложений в реальном времени на дешевые инфракрасные и традиционные сети, основанные на пакетах. Ограничения в памяти и производительности диктовали компактный и эффективный код. Природа приложений также требовала, чтобы они были безопасными и ясными. Гослинг и члены его команды начали программировать на языке С++, но вскоре были сбиты с толку тем, что язык оказался слишком сложным, громоздким и небезопасным для их задач. Они решили начать с самого начала.

С изобретением Apple Newton (первого карманного компьютера корпорации Apple) стало очевидно, что время карманных персональных компьютеров еще не пришло, поэтому компания Sun переключила усилия FirsPerson на интерактивное телевидение (ITV). Язык программирования, выбранный для телевизионных приставок, стал практически предшественником Java — языком, названным OaK. Даже с его изяществом и возможностью предоставлять безопасную интерактивность язык OaK не смог спасти безнадежное дело ITV в то время. Покупатели его не хотели, и Sun вскоре оставила эту идею.

В то время Джой и Гослинг объединились, чтобы выбрать новую стратегию для своего инновационного языка. Шел 1993 год, и вспышка интереса к Всемирной паутине предоставила им новую возможность. Язык OaK был компактным, безопасным, независимым от архитектуры и объектно-ориентированным. Как оказалось, это также являлось некоторыми из требований к универсальному, понятному Интернету языку программирования. Sun быстро сменила фокус, и после небольших изменений язык OaK стал языком Java.

Становление языка Java

Не было бы преувеличением сказать, что язык Java разгорелся как дикий огонь. Даже до его официального выпуска, когда язык Java не был производственным, почти каждая крупная компания примкнула к нему. Лицензиатами Java были Microsoft, Intel, IВМ и почти все основные производители аппаратных средств и программного обеспечения. Однако со всей этой поддержкой язык Java потерпел много неудач и узнал боль перемен в свои первые годы.

Серия нарушений договоров и антитрестовских судебных процессов между компаниями Sun и Microsoft по поводу распространения Java и его использования в браузере Internet Explorer препятствовала применению его в самой распространенной в мире операционной системе для настольного компьютера — Windows. Затруднительное положение Microsoft и Java также стало одним из очагов большого федерального дела о серьезных противоконкурентных практиках в компании, в результате чего свидетельские показания в суде выявили согласованные усилия гиганта программного обеспечения с целью подорвать Java, демонстрируя несоответствия в их версии языка. В то же время Microsoft представила свой собственный язык С# (C-sharp), основанный на Java, как часть своей инициативы .NET и избавилась от включения Java в Windows. С# стал очень хорошим языком сам по себе, совершенствуясь большим количеством инноваций в последние годы, чем Java.

Но Java продолжает распространяться на самых разнообразных платформах. Когда мы начнем знакомиться с архитектурой Java, вы увидите, что много удивительного в этом языке происходит от автономной среды виртуальной машины, на которой работают приложения Java. Язык Java очень тщательно разработан, так что эта поддерживающая архитектура может быть применена как в программном обеспечении для существующих компьютерных платформ, так и для настроенного аппаратного обеспечения. Применение Java в аппаратном обеспечении используется в некоторых чиповых картах и других встроенных системах. Также существуют «носимые» устройства, такие как кольца и армейские жетоны, в которых встроены интерпретаторы Java. Применение программного обеспечения Java доступно для всех современных компьютерных платформ, включая портативные компьютерные устройства. Сегодня ответвление платформы Java является основой операционной системы Android от Google, на которой работают миллиарды телефонов и других мобильных устройств.

В 2010-м году корпорация 0racle купила Sun Microsystems и стала распорядителем языка Java. Начало было непростым: 0racle судилась с Google из-за использования языка Java в Android и проиграла. В июле 2011-го 0racle выпустила Java SE 7, важный выпуск Java.

В следующей статье мы с вами поговорим о виртуальной машине Java.

С Уважением, МониторБанк

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *