Разнообразие Мира Java: SE, EE, ME
Платформа Java существует не в одном виде: исторически она делилась на три редакции — Java SE, Java EE и Java ME. Они различаются назначением и набором библиотек, но в основе всех лежит один язык. Разберём, чем они отличаются и что с ними происходит сегодня.
Редакции Java
Java SE (Standard Edition)
Java SE — стандартная редакция и фундамент всей платформы. Она включает базовые возможности языка и ключевые библиотеки: коллекции, ввод-вывод, многопоточность, работу с сетью, Stream API и многое другое. Именно Java SE изучается в этом курсе, и именно с неё начинают все Java-разработчики. Все остальные редакции построены поверх SE.
Java EE → Jakarta EE (Enterprise Edition)
Java EE — это не отдельный язык, а набор спецификаций и API поверх Java SE для построения крупных корпоративных и серверных приложений: веб-сервисы, сервлеты, JPA, EJB, JMS и другие технологии.
Важно понимать актуальный статус: в 2017 году компания Oracle передала Java EE некоммерческой организации Eclipse Foundation. Из-за прав на товарный знак «Java» платформу пришлось переименовать — с тех пор она называется Jakarta EE. Начиная с Jakarta EE 9 (2020) изменились и имена пакетов: префикс javax.* заменён на jakarta.*. Поэтому в современных фреймворках (Spring, Quarkus, современные версии Tomcat) вы встретите именно jakarta.*.
Java ME (Micro Edition)
Java ME создавалась для устройств с ограниченными ресурсами: старых мобильных телефонов, КПК, встраиваемых систем. В своё время это была основная платформа для мобильных приложений (игры и программы для кнопочных телефонов).
Сегодня Java ME — преимущественно историческая платформа. С появлением Android (где приложения пишут на Kotlin и Java SE-подобном API) и iOS ниша Java ME в мобильной разработке практически исчезла. Формально платформа существует и используется в некоторых встраиваемых и IoT-сценариях, но новичку важно понимать: для современной мобильной разработки Java ME не применяется.
Сравнение редакций
| Редакция | Назначение | Примеры технологий | Статус сегодня |
|---|---|---|---|
| Java SE | Стандартная платформа, основа языка | Collections, Stream API, многопоточность, java.time | Актуальна |
| Java EE → Jakarta EE | Корпоративные и серверные приложения | Servlets, JPA, EJB, JMS, веб-сервисы | Развивается как Jakarta EE |
| Java ME | Устройства с ограниченными ресурсами | MIDlet, CLDC, CDC | Историческая |
Часто задаваемые вопросы
Чем отличается Java SE от Java EE?
Java SE — это стандартная редакция с базовыми возможностями языка и библиотеками. Java EE (ныне Jakarta EE) — набор спецификаций поверх SE для корпоративных и серверных приложений. EE не существует отдельно от SE: это надстройка над ней.
Что такое Jakarta EE?
Это новое название Java EE. В 2017 году Oracle передала платформу в Eclipse Foundation, и из-за товарного знака «Java» её переименовали в Jakarta EE. С версии Jakarta EE 9 пакеты сменились с javax.* на jakarta.*.
Используется ли Java ME сегодня?
В современной мобильной разработке — практически нет. Её вытеснили Android и iOS. Java ME формально существует и применяется в отдельных встраиваемых и IoT-сценариях, но считается исторической платформой.
Какую редакцию Java изучать новичку?
Java SE. Это основа языка, на которой строятся все остальные редакции и фреймворки. Освоив SE, можно переходить к Jakarta EE, Spring или Android.
Видео объяснение
Предпочитаете видеоформат? Посмотрите этот урок с примерами и объяснениями.
Комментарии