Java: общий термин для языка программирования Java и платформы Java, запущенной Sun Microsystems в мае 1995 года. Java-это объектно-ориентированный язык программирования, который может писать кроссплатформенное прикладное программное обеспечение. Он был разработан в начале 1990 -х годов Джеймсом Гослингом, который в то время работал в Sun Microsystems. Первоначально он был назван дубом. С быстрой разработкой Интернета Java постепенно стала важным языком сетевого программирования.
Прошло девятнадцать лет с тех пор, как родилась первая версия Java. Время проходит мимо, и оно проходит в одно мгновение. 19 лет прошло в мгновение ока. На временной шкале, показанной на рисунке ниже, мы видим, что JDK разработан для версии 1.8. За эти 19 лет родились бесчисленные продукты, технологии и стандарты, связанные с Java. Теперь давайте войдем в туннель Time и начнем с эпохи, когда был воспитан язык Java, и рассмотрим траекторию развития и исторические изменения Java.
В апреле 1991 года был запущен зеленый проект, возглавляемый доктором Джеймсом Гослингом, который стремился разработать архитектуру программы, которая может работать на различных продуктах потребительской электроники, таких как стойкие коробки, холодильники, радиоприемники и т. Д. Продукт этого проекта является предшественником Java Language: Oak (Oak). Оук не был успешным на рынке потребительских товаров в то время, но с ростом интернет -тенденции в 1995 году Оук быстро обнаружил, что рыночная позиция, которая соответствует его развитию и превращается в язык Java.
23 мая 1995 года дубовый язык был переименован в Java, а версия Java 1.0 была официально выпущена на конференции Sunworld. Java Language сначала выдвинул лозунг «Напишите один раз, беги в любом месте».
23 января 1996 года был выпущен JDK 1.0, а на Java Language была первая официальная версия среды бега. JDK 1.0 предоставляет чисто интерпретированную реализацию виртуальной машины Java Java (Sun Classic VM). Репрезентативные технологии JDK версии 1.0 включают в себя: виртуальные машины Java, AWT и т. Д.
В апреле 1996 года 10 наиболее важных поставщиков операционной системы объявили, что они будут внедрять технологию Java в свои продукты. В сентябре того же года было создано около 83 000 веб -страниц с использованием технологии Java. В конце мая 1996 года Sun провела свою первую конференцию Javaone в Сан -Франциско, США. С тех пор Javaone стала ежегодным техническим событием для миллионов разработчиков языка Java по всему миру.
19 февраля 1997 года Sun выпустила JDK 1.1. Некоторые из самых основных точек поддержки технологии Java (например, JDBC и т. Д.) Были выпущены в версии JDK 1.1. Технические представители версии JDK 1.1 включают в себя: формат файла JAR, JDBC, Javabeans и RMI. Синтаксис Java также развивался в определенной степени, такой как внутренний класс и отражение, появляющиеся в это время.
До 8 апреля 1999 года JDK 1.1 выпустил в общей сложности девять версий: от 1,1,0 до 1,1,8. С 1.1.4, каждая версия JDK имеет свое собственное имя (код проекта), а именно: JDK 1.1.4 - Sparkler (Gem), JDK 1.1.5 - Тыква (тыква), JDK 1.1.6 - Abigail (Abigail, женское имя), JDK 1.1.7 - Brutus (Brutu, Romin Politibicibic и General) и JDK 1.1.1.7 - CHELSEA (Brutu, Romicicalcivicibic и General) и Jdk 1.1.1.1.1.8.
4 декабря 1998 года JDK открыл веху в версии JDK 1.2 с игровой площадкой Project Code Playground. В этой версии Sun разбивает технологическую систему Java на три направления, а именно J2SE (Platform Java 2, Standard Edition), J2EE (Platform Java 2, Enterprise Edition) для разработки на уровне предприятия и J2ME (Platform Java 2, Micro Edition) для мобильных терминов, таких как мобильные телефоны. Есть много репрезентативных технологий, которые появляются в этой версии, такие как EJB, Plug-In, Java IDL, Swing и т. Д. В этой версии у Java Virtual Machine есть встроенный компилятор JIT (как раз во времени) впервые (3 виртуальные машины сосуществуют в JDK 1.2, Classic VM, Hotspot VM и точные виртуальные машины, в том числе на обороте, которые только в vm-платформе на обороте, в том числе на обороте. Встроенные компиляторы JIT, и классическая виртуальная машина, внесенная в предыдущую версию, может использовать компилятор JIT только в виде плагинов). На языке и уровне API Java добавляет ключевые слова StrictFP и серию классов коллекций коллекций, которые очень часто используются в кодировании Java.
В марте и июле 1999 года были выпущены две небольшие версии, JDK 1.2.1 и JDK 1.2.2.
27 апреля 1999 года была выпущена виртуальная машина горячей точки. Hotspot была первоначально разработана небольшой компанией под названием «Longview Technologies». Из -за выдающейся производительности горячей точки компания была приобретена Sun в 1997 году. Виртуальная машина горячей точки была выпущена в качестве дополнительной программы для JDK 1.2, а затем стала виртуальной машиной по умолчанию для JDK 1.3 и всеми версиями Sun JDK.
8 мая 2000 года был выпущен JDK 1.3, чей код проекта - Kestrel. Улучшения JDK 1.3 по сравнению с JDK 1.2 в основном отражаются в некоторых классовых библиотеках (таких как математические операции и API нового таймера и т. Д.). Служба JNDI была предоставлена в качестве услуги на уровне платформы с JDK 1.3 (JNDI был только расширением), используя Corba IIOP для реализации протоколов связи RMI и т. Д. Эта версия также вносит много улучшений в Java 2D, обеспечивает большое количество API 2D New Java 2D и добавляет новый Javasound Class Class Class Bibrible. JDK 1.3 имеет пересмотренную версию JDK 1.3.1 с названием кода проекта Ladybird, и была выпущена 17 мая 2001 года.
Начиная с JDK 1,3, Sun придерживался привычки выпускать основную версию JDK примерно каждые два года, названные в честь животных, а различные изменения, выпущенные в течение периода, названы насекомыми.
13 февраля 2002 года был выпущен JDK 1.4 с названием кода проекта Merlin (Grey Back Falcon). JDK 1.4 - это версия Java, которая действительно повзрослела. Известные компании, такие как Compaq, Fujitsu, SAS, Symbian и IBM, приняли участие и даже реализовали свои собственные независимые JDK 1.4. Даже более десяти лет спустя все еще существует много основных приложений (весна, гибернат, стойки и т. Д.), Которые могут работать непосредственно на JDK 1.4 или продолжать выпускать версии, которые могут работать на JDK 1.4. JDK 1.4 также выпустил много новых технических функций, таких как регулярные выражения, цепочки исключений, NIO, классы журналов, анализаторы и преобразователи XSLT.
JDK 1.4 имеет два последующих изменения:
JDK 1.4.1, проект Codename Grasshopper, выпущен 16 сентября 2002 г.
Проект под кодовым названием Mantis JDK 1.4.2 выпущен 26 июня 2003 года.
Примерно в 2002 году инцидент, который не имел прямых отношений с Java, но на самом деле оказал большое влияние на разработку Java, был выпущен в работе Microsoft .NET. Эта технологическая платформа, которая очень похожа на Java как в технической реализации, так и в целевых пользователях, принесла много дискуссий, сравнения и конкуренции с Java. Огромные дебаты между платформой .NET и платформой Java до сих пор продолжались.
30 сентября 2004 года был выпущен JDK 1.5 с названием кода проекта Tiger. С момента JDK 1.2 трансформация Java на уровне синтаксиса была очень небольшим, а JDK 1.5 добился значительных улучшений в простоте использования синтаксиса Java. Например, синтаксические функции, такие как автоматическое бокс, дженерики, динамические аннотации, перечисления, параметры переменной длины и петли траверса (петли Foreach), все добавлены в JDK 1.5. На уровне виртуальной машины и API эта версия улучшает модель памяти Java (JMM), предоставляет пакет параллелизма Java.Uutil.concurrent и т. Д. Кроме того, JDK 1.5 является последней версией JDK, которая официально заявляет, что она может поддерживать платформу Windows 9X.
11 декабря 2006 года был выпущен JDK 1.6 с названием кода проекта Mustang (Mustang). В этой версии Sun завершило методы именования J2EE, J2SE и J2ME, которые существуют в течение 8 лет с момента JDK 1.2, и позволили методы именования Java SE 6, Java EE 6 и Java ME 6. Улучшения для JDK 1.6 включают в себя: обеспечение поддержки динамического языка (реализовано через встроенный javilla-java-java-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rhyt-rht API и т. Д. В то же время эта версия внесла много улучшений для виртуальной машины Java, включая блокировку и синхронизацию, сбор мусора, загрузку класса и другие алгоритмы.
На конференции JavaOne 13 ноября 2006 года Sun объявила, что, наконец, будет открыт Java, и в следующем году различные части JDK были последовательно раскрыты в соответствии с протоколом GPL V2 (GNU General Public License V2) и создали организацию OpenJDK для независимого управления этими исходными кодами. В дополнение к очень небольшому количеству кода прав собственности (обремененный код, который в основном сам Sun не имеет разрешения на обработку с открытым исходным кодом), OpenJDK включает в себя почти все коды Sun JDK. Менеджер по качеству OpenJDK однажды сказал, что в JDK 1.7 коды Sun JDK и OpenJDK в основном такие же, за исключением аннотаций авторских прав заголовков кода, поэтому OpenJDK 7 и Sun JDK 1.7 - это, по существу, продукты, разработанные тем же набором базовых кодов.
После выпуска JDK 1.6 из -за увеличения сложности кода, открытого исходного кода JDK, развития Javafx, экономического кризиса и приобретения Sun, Sun потратил много ресурсов на другие вещи, кроме разработки JDK, и обновление JDK не поддерживало скорость развития, выпустив крупную версию еще на два года. JDK 1.6 выпустил в общей сложности 37 версий обновлений. Последняя версия - Java SE 6 Update 37, которая была выпущена 16 октября 2012 года.
19 февраля 2009 года JDK 1.7, названный кодовой дельфин, завершил свою первую веху. Согласно функциональному планированию JDK 1,7, было установлено в общей сложности 10 вех. Последняя веха была первоначально запланирована на 9 сентября 2010 года, но JDK 1.7 в конечном итоге не смог завершить, как и планировалось по разным причинам.
Судя по первоначальному функциональному планированию JDK 1.7, это должна быть версия JDK, которая содержит много важных улучшений. Подпроекты, такие как проект Lambda (Lambda Expressions, функциональное программирование), проект Jigsaw (модульная поддержка виртуальных машин), динамическая поддержка языка, коллекционер мусора и проект Coin (эволюция языков), окажут глубокое влияние на индустрию Java. Во время разработки JDK 1,7 Sun Company находилась в категории как в технологических, так и в коммерческих соревнованиях, и ее стоимость фондового рынка снизилась до 3% от своего пикового периода и больше не смогла продвигать развитие JDK 1,7 как обычно. Чтобы положить конец долгосрочной «остановке» JDK 1.7 как можно скорее, Oracle объявил вскоре после приобретения SUN, он будет реализовать «План B» и значительно сократил предопределенную цель JDK 1.7, чтобы гарантировать, что официальная версия JDK 1.7 может быть выпущена на срок 28 июля 2011 года. Наконец, основные улучшения JDK 1.7 включают в себя: предоставление нового коллекционера G1 (G1 все еще находился в экспериментальном состоянии, когда он был выпущен, и он не был официально «реформирован» до обновления 4 в апреле 2012 года), укрепляя поддержку вызовов для не Java-языков (JSR-292, эта функция не была полностью внедрена до сих пор, обновляя архитектуру класса.
До сих пор JDK 1.7 выпустил 9 версий обновлений, а последнее Java SE 7 Update 9 было выпущено 16 октября 2012 года. Начиная с Java SE 7 Update 4, Oracle начал поддерживать операционную систему Mac OS X и достигла полной поддержки в обновлении 6. В то же время он также обеспечивает поддержку архитектуры инструкций ARM в обновлении 6. Платформы и поддерживают ARM, X86, X64 и SPARC SEL SET SEL TIPES.
20 апреля 2009 года Oracle объявила, что официально приобрела Sun за 7,4 миллиарда долларов США, а торговая марка Java официально принадлежала Oracle (сам язык Java не принадлежит ни к какой компании, он управляется организацией JCP, хотя JCP в основном возглавляет Sun или Oracle). Поскольку Oracle ранее приобрела еще одну крупную компанию промежуточного программного обеспечения BEA, после завершения приобретения Sun, Oracle получил две из трех крупных коммерческих виртуальных виртуальных машин от BEA и Sun, JRockit и Hotspot. Oracle объявил, что в ближайшие 1-2 года он учится у сильных и слабых сторон друг друга и, наконец, объединит их в один. Можно предположить, что в ближайшем будущем технология виртуальной машины Java будет претерпевать значительные изменения.
28 июля 2011 года Oracle выпустил Java SE 1,7
18 марта 2014 года Oracle выпустил Java SE 1,8
Язык Java имеет следующие функции: простота, объектно-ориентированная, распределенная, интерпретированная выполнение, надежная, безопасная, нейтральная архитектура, портативная, высокая производительность, многопоточная и динамическая.