Файл: История возникновения и развития языка программирования Си (С++) и Java.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 06.04.2023

Просмотров: 128

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Выпуск версии Java 1.2 стал основной новостью конференции JavaOne в 1998 году. В новой версии слабые средства для создания графического пользовательского интерфейса и графических приложений были заменены сложным и масштабным инструментарием. Это был шаг вперед, к реализации лозунга «Write Once, Run Anywhere»™ («Один раз напиши – и везде выполняй»), выдвинутого при разработке предыдущих версий.

В 1997 году большинство версий Java оставались бесплатными, за исключением Java Enterprise System. В этом же году вышла существенно обновленная версия – Java 2, а также выделились отдельные платформы: J2SE, J2EE, J2ME.

В декабре 1998 года через три дня (!) после выхода в свет название новой версии было изменено на громоздкое словосочетание Java 2 Standart Edition Software Development Kit Version 1.2 (Стандартное издание пакета инструментальных средств для разработки программного обеспечения на языке Java 2, версия 1.2).

Для более наглядного понимания этапности развития Java приведем ключевые события приводятся в хронологическом порядке:

Июнь 1991 г. – Гослинг начинает работу над интерпретатором Oak, который через несколько лет (при поисках торговой марки) переименован в Java.

19 августа 1991 г. – Коллектив разработчиков Green демонстрирует идеи базового пользовательского интерфейса и графическую систему сооснователям компании Sun Скотту Макнили и Биллу Джою.

17 октября 1991 г. – Шеридан и Нотон присваивают конструкторской философии своего коллектива девиз «1st Person», который со временем становится названием компании.

17 ноября 1991 г. – Офис проекта Green снова подключается к главной сети компании Sun линией на 56 Кбит/с

1 марта 1992 г. – К проекту Green присоединяется Джонатан Пейн, который позднее участвует в написании HotJava.

Лето 1992 г. – Интенсивная деятельность по доработке Oak, Green OS, пользовательского интерфейса, аппаратуры Star7 и соответствующих компонентов.

4 сентября 1992 г. – Завершена разработка устройства Star7; оно продемонстрировано Джою и Макнили.

1 октября 1992 г. – Из компании SunLabs переходит Уэйн Розинг, принимающий на себя руководство коллективом.

1 ноября 1992 г. – Организована корпорация FirstPerson.

15 января 1993 г. – Коллектив переезжает в Пало Альто в здание, где раньше находилась лаборатория Western Research Lab компании DEC и была основана исходная группа Hamilton Group (она же OSF).

15 марта 1993 г. – После ознакомления с результатами испытаний кабельного интерактивного телевидения, проведенных компанией Time Warner, корпорация FirstPerson сосредотачивается на этой тематике.

Апрель 1993 г. – Выпуск первого графического браузера для Internet – Mosaic 1.0, разработанного в центре NCSA.


14 июня 1993 г. – Компания Time Warner продолжает проводить свои испытания интерактивного кабельного ТВ с компанией SGI, несмотря на признанное превосходство технологии компании Sun и уверения, что Sun выиграла эту сделку.

Лето 1993 г. – Нотон пролетает 300 тысяч миль, продавая Oak всем, занимающимся бытовой электроникой и интерактивным телевидением; тем временем темп, с которой люди получают доступ к Internet, головокружительно нарастает.

Август 1993 г. – Через несколько месяцев многообещающих переговоров с компанией 3DO относительно разработки ОС для приставок, президент 3DO Трип Хокинс предлагает купить технологию. Макнили отказывается, и сделка срывается.

Сентябрь 1993 г. – К коллективу присоединяется Артур Ван Хофф, поначалу – чтобы создать среду разработки приложений, предназначенных для интерактивного телевидения, а потом разрабатывающий, главным образом, сам язык.

7 декабря 1993 г. – Экспертиза операций на высоком уровне в FirstPerson обнаруживает, что эта группа не имеет реальных партнеров или маркетинговой стратегии и неясно представляет себе дату выпуска.

8 февраля 1994 г. – Отменено публичное заявление компании FirstPerson о выпуске, которое должно было состояться на конференции Technology, Entertainment and Design (TED).

17 февраля 1994 г. – Исполнительным лицам компании Sun для разносторонней экспертизы представлен альтернативный бизнес-план корпорации FirstPerson по разработке мультимедийной платформы для CD-ROM и онлайновой работы.

25 апреля 1994 г. – Создана компания Sun Interactive; в нее переходит половина сотрудников FirstPerson.

Июнь 1994 г. – Начат проект Liveoak, нацеленный Биллом Джоем на использование Oak в крупном проекте небольшой операционной системы.

Июль 1994 г. – Нотон ограничивает область применения проекта Liveoak, просто переориентировав Oak на Internet.

16 сентября 1994 г. – Пейн и Нотон начинают писать WebRunner – браузер-аналог Mosaic, позднее переименованный в HotJava.

29 сентября 1994 г. – Прототип HotJava впервые продемонстрирован исполнительным лицам компании Sun.

11 октября 1994 г. – Нотон уходит в компанию Starwave.

Осень 1994 г. – Ван Хофф реализует компилятор Java на языке Java. Ранее Гослинг реализовывал его на языке С.

23 мая 1995 г. – Компания Sun официально представляет Java и HotJava на выставке SunWorld '95.

23 мая 1995 г. – Netscape объявляет о намерении использовать Java при разработке браузера Netscape.

21 сентября, 1995 г. – В Нью-Йорке проходит конференция по Java-разработке

25 Сентября, 1995 г. – Sun объявляет о расширенном сотрудничестве с Toshiba.

26 Сентября, 1995 г. – Sun анонсирует пакет инструментов для разработки с использованием Java-технологий.


30 Октября, 1995 г. – На Internet World Conference в Бостоне компании Lotus Development Corp., Intuit Inc., Borland International Inc., Macromedia Inc. и Spyglass Inc. объявляют о намерении лицензировать Java.

4 декабря, 1995 г. – Sun, Netscape и Silicon Graphics создают альянс для разработки инструментария для интернета.

4 декабря, 1995 г. – Borland, Mitsubishi Electronics, Sybase и Symatec объявляют о планах лицензировать Java.

6 декабря, 1995 г. – IBM и Adobe объявляют о планах лицензировать Java.

7 декабря, 1995 г. – Microsoft объявляет о планах лицензировать Java.

23 января, 1996 г. – релиз JDK 1.0

В 1997 году большинство версий Java оставались бесплатными, за исключением Java Enterprise System. В этом же году вышла существенно обновленная версия – Java 2, а также выделились отдельные платформы: J2SE, J2EE, J2ME.

  • J2SE 1.3 (Май 8, 2000)
  • J2SE 1.4 (Февраль 6, 2002)
  • J2SE 5.0 (Сентябрь 30, 2004)
  • Java SE 6 (Декабрь 11, 2006)
  • Java SE 7 (Июль 28, 2011)
  • Java SE 8 (Март 18, 2014)

В ноябре 2006 года Sun объявила часть кода виртуальной машины Java (JVM) свободном распространяемым и начала выпускать его под лицензией GNU General Public License (GPL). К маю 2007 года компания распространяла бесплатно почти весь код JVM, за исключением малой его части, на которую Sun не имеет прав.

В 2009-10 годах корпорация Oracle поглотила компанию Sun Microsystems. В апреле 2010 Джеймс Гослинг, перешедший в Oracle после поглощения, покинул компанию.

Кроме стандартного издания пакета ("Standart Edition") были предложены еще два варианта: "микроиздание" ("Micro Edition") для портативных устройств, например, для мобильных телефонов, и. "промышленное издание" ("Enterprise Edition") для создания серверных приложений. В нашей книге в центре внимания находится стандартное издание.

Версии 1.3 и 1.4 стандартного издания пакета инструментальных средств намного совершеннее первоначального выпуска языка Java 2. Они обладают расширенными возможностями, включая новые, и, разумеется, содержат намного меньше ошибок. В таблице 1. ниже показан стремительный рост объема библиотеки API по мере появления новых версий стандартного издания пакета SDK.

Таблица 1. Рост объема библиотеки API из пакета Java Standart Edition

Версия

Год выпуска

Новые языковые средства

Количество классов и интерфейсов

1.0

1996

Выпуск самого языка

211

1.1

1997

Внутренние классы

477

1.2

1998

Отсутствуют

1524

1.3

2000

Отсутствуют

1840

1.4

2002

Утверждения

2723

5.0

2004

Обобщенные классы, цикл в стиле for each, автоупаковка, аргументы переменной длины, метаданные, перечисления, статический импорт

3279

6

2006

Отсутствуют

3793

7

2011

Оператор switch со строковыми метками ветвей, ромбовидный оператор, двоичные литералы, усовершенствованная обработка исключений

4024

8

2014

Лямбда-выражения, библиотеки потоков и даты/времени, интерфейсы с методами по умолчанию

4240

9

2017

Литералы в коллекциях, оператор Элвиса, Class Optional, Streams, IO, Regrexp, обработка процессов ProcessHandle

более 4500


С 2018 года коренным образом изменилась парадигма разработки и выпуска релизов Java. Java всегда была известна медленным темпом выхода новых версий. В среднем новые релизы Java выходили приблизительно раз в 3 года: Java 7 вышла в 2011 году, Java 8 – в 2014, Java 9 – в 2017. При этом релизы были очень крупными, например в Java 9 вошло аж 99 JEP'ов [6]. Постепенно Oracle понял, что в современном мире такой медленный темп выхода может навредить развитию и продвижению Java, поэтому принял решение перейти к 6-месячному релизному циклу. Таким образом, выход новых улучшения, которые могут быть выпущены прямо сейчас, не будет задерживаться из-за других нововведений, более трудоемких к реализации.

1.3. Сферы применения языка Java

На сегодняшний день существует большое разнообразие областей применения языка программирования Java, от сайтов электронной коммерции до Android приложений, от научных до финансовых приложений, таких как трейдинговые системы, и игр, типа Minecraft, до настольных программных средств, таких как Eclipse, Netbeans и IntelliJ, от open source фреймворков до J2ME приложений и т.д. Узнаем поподробнее о каждом из них.

Java крайне обширно применяется в финансовой сфере. Очень многие мировые инвестиционные банки, типа Goldman Sachs, Citigroup, Barclays, Standard Charted и другие используют Java для написания front-end и back-end офисных электронных систем, систем регулирования и конфирмации, систем обработки данных и некоторых других. Преимущественно Java используется при написании серверных приложений, в общей массе своей без какого-либо пользовательского интерфейса, которые получают данные с одного сервера, обрабатывают их и отправляют дальше. Java Swing был также популярен для создания «толстоклиентных» интерфейсов, но сейчас C# более успешен, а значит и востребован на рынке в этой области, а Swing уже выдыхается.

Еще один яркий пример успешного использования Java – операционная система Android. Взглянем на смартфон или другое устройство на Android: абсолютно все приложения написаны на Java, с использованием Google и Android API, которые очень схожи с JDK. Несколько лет назад Android предоставил необходимые возможности, благодаря чему сегодня многие Java программисты – Android разработчики. Кстати, Android использует другую JVM и другой способ компоновки, но код всё ещё написан на Java [5,7,8].

Также Java активно используется в электронной коммерции и в области веб-приложений. Огромное количество RESTful сервисов было разработано с использованием Spring MVC, Struts 2.0 и похожих фреймворков. Даже простейшие приложения, основанные на Servlet, JSP и Struts, в определенной мере популярны в различных государственных проектах. Многие веб-приложения государственных, оздоровительных, страховых, образовательных, оборонительных и некоторых других отделений написаны на Java, что в очередной раз доказывает востребованность и универсальность этого языка среди других.


Много полезных и достойных программных средств и средств разработки написаны и разработаны на Java, например Eclipse, IntelliJ Idea и Netbeans IDE. К примеру, Eclipse представляет собой свободную интегрированную среду разработки модульных кроссплатформенных приложений. Она развивается и поддерживается компанией «Eclipse Foundation». Самые известные из приложений на основе Eclipse Platform – разнообразные «Eclipse IDE» для разработки программного обеспечения на различных языках программирования. По сути, это «инструментарий для разработки инструментариев». Поскольку она не является набором API, инфраструктура Eclipse будет состоять из реального кода, созданного для исполнения реальных задач [7].

Отдельно внимание стоит обратить на Java To Micro Edition. Несмотря на то, что появление iOS и Android практически уничтожило J2ME рынок, в мире ещё огромное количество дешёвых телефонов от Nokia и Samsung, использующих J2ME. Было время, когда практически все игры и приложения, доступные на Android, были написаны с использованием MIDP и CLDC, которые являются частью платформы J2ME. Все, кто использовал кнопочные мобильные телефоны с 2000-ых по 2010-е годы, вкушали плоды активного использования программистами этого языка. J2ME всё ещё популярен в таких средствах, как Blu-ray, карточки и телевизионные приставки (конечно, в гораздо менее широком смысле, чем те же 10 лет назад). Кстати, одна из причин такой популярности месенджера «WhatsApp» – он также доступен на Java To Micro Edition.

В наше время очень популярен трейдинг – неважно, криптовалюты или ценные бумаги, локальные местные банки или крупнейшие финансовые концерны – всякая идущая в ногу с современными тенденциями организация имеет собственное мобильное приложение для удобства клиентов – трейдинговая платформа. И, да, чаще всего она написана на Java. Также те самые популярные банковские приложения, типа Murex, тоже созданы с помощью Java.

Hadoop и другие технологии обработки больших данных так или иначе используют Java, например Hbase и Accumulo от Apache, или ElasticSearch. Хоть Java и не доминирует в этой области, поскольку существуют такие технологии, как MongoDB, которые написаны на С++.

Обширна Java и в области встраиваемых систем. Для того, чтобы увидеть на что способна платформа, вам нужно всего 130 KB для использования Java (на смарт-картах и сенсорах). Изначально Java разрабатывалась для встраиваемых систем. В действительности эта область была частью начальной кампании Java «пиши один раз, запускай, где угодно» и похоже, что она приносит свои плоды. Один из немногих языков с конкретной целью в разработке, что не уходил в сторону с намеченного пути и, более того, пришел к этой цели [9].