The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Компания Oracle выпустила Java SE 9 и Java EE 8"
Отправлено opennews, 22-Сен-17 08:14 
После трёх с половиной лет разработки компания Oracle выпустила платформу Java SE 9 (http://jdk.java.net/9/) (Java Platform, Standard Edition 9), в качестве эталонной реализации которой используется открытый проект OpenJDK (http://openjdk.org/). В Java SE 9 сохранена полная обратная совместимость с прошлыми выпусками платформы Java, все ранее написанные Java-проекты без изменений будут работоспособны при запуске под управлением новой версии.  Изначально выпуск Java SE 9 был запланирован на 22 сентября 2016 года, но был перенесён (https://www.opennet.ru/opennews/art.shtml?num=46634)  три раза и в итоге вышел с задержкой в один год. Готовые для установки сборки Java SE 9 (JDK, JRE и Server JRE) подготовлены (http://www.oracle.com/technetwork/java/javase/downloads/inde...) для Linux (x86_64), Solaris ( SPARC), Windows и macOS.


Разработанная в рамках проекта OpenJDK эталонная реализация Java 9 полностью открыта под лицензией GPLv2 с исключениями GNU ClassPath, разрешающими динамическое связывание с коммерческими продуктами. Используя OpenJDK в качестве эталонной реализации сторонние производители могут создавать полностью совместимые с Java SE 9 производные открытые реализации Java. Проприетарный Oracle JDK 9 отличается от OpenJDK наличием некоторых закрытых компонентов, таких как система плагинов, которые не определены в Java-стандарте и не входят в эталонную реализацию Java 9. Oracle JDK поставляется под лицензией BCL (Binary Code Licence). В дальнейшем компания Oracle намерена полностью (https://www.opennet.ru/opennews/art.shtml?num=47148) открыть код коммерческих компонентов и обеспечить полную взаимозаменяемость OpenJDK и Oracle JDK, а также перейти на новый цикл разработки Java SE, подразумевающий формирование выпусков раз в полгода с постепенным переносом новой функциональности, стабилизированной в непрерывно развиваемой ветке.


Основные новшества (http://openjdk.java.net/projects/jdk9/) Java SE 9:

-  Интеграция принципиально новых для Java средств разбиения программ и JDK на модули, развиваемых в рамках проекта Jigsaw (http://openjdk.java.net/projects/jigsaw/):


-  JEP 200 (http://openjdk.java.net/jeps/201) - определение модульной структуры JDK.
-  JEP 201 (http://openjdk.java.net/jeps/201) - Реорганизация кода JDK в модули, усовершенствование системы сборки для поддержки компиляции модулей, раздельная обработка модулей на этапе сборки.
-  JEP 220 (http://openjdk.java.net/jeps/220) - реструктуризация  бинарных образов JDK и JRE для поддержки модулей и увеличения производительности, безопасности и удобства сопровождения.

Разбиение кода платформы Java на модули упростит создание, сопровождение и распространение больших приложений, позволив избавиться от наблюдаемых в настоящее время проблем с монолитными JAR и распространением наборов классов. Система модулей даст возможность легко выделять функциональность и формировать настраиваемые конфигурации, адаптируемые как для развёртывания на больших серверах, так и на встраиваемой технике. Модульные приложения, построенные на основе модульной платформы Java, потребуют загрузки меньшего объёма данных и позволят достигнуть более высокой производительности за счёт более эффективной оптимизации специфичных для используемой конфигурации модулей;


-  Легковесный JSON API (http://openjdk.java.net/jeps/198) для обработки и генерации данных в формате JSON;

-  Новый API (http://openjdk.java.net/jeps/110) для разработки HTTP-клиентов, идущий на замену HttpURLConnection и поддерживающий  HTTP/2.0  и websockets;

-  Улучшенный API (http://openjdk.java.net/jeps/102) для управления процессами на уровне операционной системы;


-  Улучшение (http://openjdk.java.net/jeps/143) работы блокировок для конкурирующих Java-объектов, позволившие повысить производительность в условиях, когда разные нити одновременно пытаются получить доступ к объектам;

-  Сегментирование (http://openjdk.java.net/jeps/197) кэша JIT-компилятора, позволившее повысить производительность длительно выполняемых программ, сократить фрагментацию и время запуска;


- Интеграция в  компилятор sjavac (http://openjdk.java.net/jeps/199) (Smart Java compiler) средств параллельной и раздельной сборки, внесены улучшения для обеспечения сборки JDK и крупных проектов;
-  Добавлена интерактивная оболочка jshell (http://openjdk.java.net/jeps/222), упрощающая запуск однострочников в процессе разработки,  экспериментов с новыми возможностями и API;

-  Модернизирована система документации Javadoc, в которой добавлены функции для поиска документации по API и информации об определении классов и интерфейсов в модулях;
-  Улучшен Streams API, в котором реализована возможность добавления методов для ситуационного добавления или удаления элементов из потоков Stream, перебора элементов Stream и создания Stream из обнуляемых значений. Расширен набор Java SE API, которые могут выступать источником для Stream.
-  Компоненты JavaFX/Media переведены на новую ветку GStreamer 1.x;


Одновременно компания Oracle анонсировала спецификацию Java EE 8 (https://github.com/javaee/javaee-spec/blob/master/download/J...) (Java Platform, Enterprise Edition 8) и открытый сервер приложений GlassFish 5.0 (https://github.com/javaee/glassfish), позиционируемый в качестве эталонной реализации данной спецификаций. Код GlassFish распространяется под двумя лицензиями: CDDL v1.0 и GPL v2. Java EE 8 станет последним выпуском, сформированным силами Oracle. Заявлено (https://www.opennet.ru/opennews/art.shtml?num=47186) о планах передать фонду Eclipse технологии Java EE и наработки, связанные с проектом GlassFish, включая эталонные реализации, наборы для оценки совместимости (TCK) и всю документацию. В будущем Java EE будет развиваться в рамках независимой модели разработки c более гибкой моделью лицензирования и открытым процессом принятия решений.


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


-  Новая версия Servlet API 4.0 с поддержкой протокола HTTP/2;
-  Представлен новый JSON binding API для манипуляции данными в формате JSON и расширены возможности JSON-P 1.1;
-  В JAX-RS добавлена поддержка событий, инициируемых сервером (Server-Sent Events), и реализован новый клиентский API (REST Reactive Client API);
-  Добавлен новый переносимый Security API для управления доступом в приложениях, запускаемых в облачных системах и PaaS;
-  Внесена большая порция улучшений в  CDI, включая поддержку асинхронных событий;
-  Поддержка новых возможностей Java SE 8 (Data & Time API, Streams API, расширенные аннотации);
-  Обновлены версии API:


-  Contexts and Dependency Injection (CDI) 2.0
-  The Java API for JSON Binding (JSON-B) 1.0
-  Java Servlet 4.0
-  Java API for RESTful Web Services (JAX-RS) 2.1
-  JavaServer Faces (JSF) 2.3
-  Java API for JSON Processing (JSON-P)1.1
-  Java EE Security API 1.0
-  Bean Validation 2.0
-  Common Annotations 1.3
-  Java Persistence 2.2
-  Java API for WebSocket 1.1
-  JavaMail 1.6


URL: https://www.oracle.com/corporate/pressrelease/java-se-9-and-...
Новость: http://www.opennet.ru/opennews/art.shtml?num=47248

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру