Компания Oracle выпустила Java 8
18 марта 2014 года
После двух лет и семи месяцев разработки компания 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), Windows и OS X. Поддержка Java SE 8 уже интегрирована в такие инструменты для разработчиков, как NetBeans 8.0, IntelliJ IDEA 12 и Oracle JDeveloper. Одновременно представлена редакция Java SE для встраиваемых систем - Java SE Embedded 8, обладающая базовыми возможностями Java SE и пригодная для использования на портативных устройствах с 32 Мб ОЗУ, занимая от 11 Мб на накопителе.
Изначально релиз 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).
- Интеграция поддержки Lisp-подобных лямбда-выражений, развиваемых в рамках проекта Lambda. Расширений стандартных библиотек средствами для параллельного выполнения операций над потоками данных, нацеленных на упрощение написания кода для многоядерных процессоров;
- Поддержка компактных профилей для развёртывания на оборудовании с ограниченными ресурсами приложений, которым не требуются все компоненты платформы;
- Новая система сборки на основе Autoconf;
- Интеграция Nashorn, легковесного и высокопроизводительного движка JavaScript, работающий поверх виртуальной машины Java (JVM);
- Новый API для работы с датами и временем. Новые Calendar и Locale API;
- Повторяющиеся аннотации (Repeating Annotations), позволяющие применить один и тот же тип аннотации более одного раза в одном объявлении или применении типа.
- Тип аннотаций, предоставляющий возможность применения аннотаций везде, где используются типы, а не только при объявлении;
- Новый пакет с классами 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. Поддержка аппаратного ускорения шифрования AES на процессорах Intel;
- Многочисленные улучшения в JavaFX, включая новые элементы управления DatePicker и TreeTableView, класс SwingNode для встраивания контента Swing, новая тема оформления Modena, пакет javafx.print с API для вывода на печать, класс WebView, класс ScheduledService, поддержка архитектуры ARM, существенное расширение средств для работы с 3D-графикой (3D-формы, камера, освещение, субсцены, материалы, сглаживание);
- Включение в состав Java DB 10.10;
- В пакеты java.lang и java.util добавлены средства для параллельной сортировки массивов и функции кодирования/декодирования Base64.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.