Компания Oracle выпустила Java SE 8

Компания Oracle выпустила платформу Java SE 8 (Java Platform, Standard Edition 8), в качестве эталонной реализации которой используется открытый проект OpenJDK. В Java SE 8 сохранена полная обратная совместимость с прошлыми выпусками платформы Java, все ранее написанные Java-проекты без изменений будут работоспособны при запуске под управлением новой версии. Готовые для установки сборки Java SE 8 (JDK, JRE и Server JRE) подготовлены для Linux (x86, x86_64, ARM), Solaris (x86, SPARC), Winodws и OS X. Поддержка Java SE 8 уже интегрирована в такие инструменты для разработчиков, как NetBeans 8.0, IntelliJ IDEA 12 и Oracle JDeveloper. Изначально релиз Java SE 8 планировалось выпустить в сентябре 2013 года, но график разработки был изменён в связи с решением по проведению внеочередной работы по усилению безопасности Java 7, на которую были переброшены многие вовлечённые в разработку Java 8 инженеры. Разработанная в рамках проекта OpenJDK эталонная реализация Java 8 полностью открыта под лицензией GPLv2 с исключениями GNU ClassPath, разрешающими динамическое связывание с коммерческими продуктами. Используя OpenJDK в качестве эталонной реализации сторонние производители могут создавать полностью совместимые с Java SE 8 производные открытые реализации Java. Проприетарный Oracle JDK 8 отличается от OpenJDK наличием некоторых закрытых компонентов, таких как система плагинов, которые не определены в Java-стандарте и не входят в эталонную реализацию Java 8. Oracle JDK поставляются под лицензией BCL (Binary Code Licence).

Основные новшества Java SE 8:

Интеграция поддержки Lisp-подобных лямбда-выражений («замыкания»), развиваемых в рамках проекта Lambda. Расширений стандартных библиотек средствами для параллельного выполнения операций над потоками данных, нацеленных на упрощение написания кода для многоядерных процессоров; Поддержка компактных профилей для развёртывания на оборудовании с ограниченными ресурсами приложений, которым не требуются все компоненты платформы; Новая система сборки на основе Autoconf; Интеграция Nashorn, легковесного и высокопроизводительного движка JavaScript, работающий поверх виртуальной машины Java (JVM); Повторяющиеся аннотации (Repeating Annotations), позволяющие применить один и тот же тип аннотации более одного раза в одном объявлении или применении типа. Тип аннотаций, предоставляющий возможность применения аннотаций везде, где используются типы, а не только при объявлении; Новый API для работы с датами и временем; Новый пакет с классами java.util.stream, предоставляющий Stream API с поддержкой операций в стиле функционального программирования над потоками элементов; Увеличение производительности HashMaps в условиях возникновения коллизий; Включение по умолчанию TLS 1.2 на стороне клиента. Усиление алгоритмов для шифрования с использованием паролей. Поддержка SNI (Server Name Indication) в JSSE Server для обеспечения доступа через шифрованное соединение к виртуальным хостам на одном IP. Поддержка хэширования SHA-224 и блочного шифра AEAD (Authenticated Encryption with Associated Data). Новый класс java.security.cert.PKIXRevocationChecker для настройки проверки отзыва сертификатов X.509;

© OpenNet