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

Вот уже почти четверть века Java-код маячит в процессорах различных устройств. В то время Java стала основой мировой экономики: НАСА, Google, АНБ, ING, eBay, Amazon, Twitter и множество других компаний полагаются на программное обеспечение Java. Кроме того, язык программирования поддерживается широким спектром встроенных систем, в результате чего общее количество активных виртуальных машин Java (JVM) достигает 45 миллиардов, по данным Oracle.

Несмотря на это, некоторые разработчики считают, что Java изжила себя. Скорее всего, это связано с тем, что Java 8 2014 года до сих пор широко используется во многих компаниях.

Эта точка зрения в настоящее время устарела, поскольку в последние годы Oracle значительно модернизировала как язык Java, так и Java Development Kit (JDK). В этой статье мы развеиваем многие клише и используем серьезные изменения, чтобы продемонстрировать, что Java по-прежнему актуален спустя 25 лет.

  • Ява тщательно разрабатывалась в течение последних 25 лет, чтобы оставаться на переднем крае разработки.
  • Например, экземпляры записей заменили тщательно запрограммированные классы данных.
  • В течение многих лет Oracle работала над такими крупными проектами, как Valhalla, в рамках которого в Java будут представлены значения типов.

Скорость разработки заметно увеличилась с тех пор, как Oracle взяла на себя управление в 2010 году. Недавно установленная модель выпуска требует новой функции каждые шесть месяцев. Oracle выпускает выпуск LTS (долгосрочная поддержка) каждые два года, который включает исправления ошибок и обновления безопасности в течение как минимум восьми лет. В сентябре 2023 года будет выпущена следующая LTS-версия (Java 21).

В прошлом всегда были значительные задержки в выпусках Java, потому что важные функции не были готовы вовремя. В результате Oracle уже несколько лет использует модель «Release Train». Если подпроект готов к отправке вовремя, он завершен; в противном случае деталь должна ждать следующего поезда (освобождения). С тех пор новые релизы приходили вовремя.

Несколько лет назад были проблемы с официальным JDK. Oracle фактически запретила бесплатное коммерческое использование своего JDK. В результате многие разработчики перешли на вариант с открытым исходным кодом OpenJDK, который в основном использует тот же код. Oracle сняла некоторые ограничения, но не все, создав лицензионное минное поле. В целях безопасности большинство разработчиков продолжают получать OpenJDK от Adoptium.

Формула успеха

Java дебютировала в 1996 году как более удобная и безопасная альтернатива C++. Java быстро завоевала конкурентное преимущество из-за своего обещания «написать один раз, работать везде». Однако, поскольку Java в настоящее время в основном используется на сервере, где она часто запускается в контейнере Docker, этот аспект со временем стал менее важным. Итак, каковы конкретные причины его успеха?

Долгосрочная стабильность — одна из ключевых характеристик Java: за некоторыми исключениями код 27-летней давности по-прежнему работает на текущей JVM. Этот консервативный подход является одновременно и проклятием, и благословением, потому что он означает, что многие старые косы все еще целы. Однако корпоративные приложения, в частности, имеют очень длительный жизненный цикл, поэтому непрерывность имеет решающее значение.

Другая причина заключается в тщательности, с которой Oracle поддерживает разработку Java. Oracle инвестирует годы во многие проекты и за это время тщательно взвешивает преимущества и недостатки. Одним из примеров является проект Valhalla, который находится в разработке с 2014 года и направлен, среди прочего, на внедрение определяемых пользователем типов-примитивов (типов-значений). Когда такой проект наконец будет завершен, неприятных сюрпризов должно быть немного.

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