Java Platform, Micro Edition | это... Что такое Java Platform, Micro Edition? (original) (raw)

Wave.svg
Java Card
Micro Edition (ME)
Standard Edition (SE)
Enterprise Edition (EE)
PersonalJava (не поддерживается)

Java Platform, Micro Edition (Java ME, ранее — Java 2 Micro Edition, J2ME) — подмножество платформы Java для устройств, ограниченных в ресурсах, например: сотовых телефонов, карманных персональных компьютеров, ресиверов цифрового телевидения, проигрывателей дисков Blu-ray.

Java ME разработана под руководством Sun Microsystems и является заменой похожей технологии — PersonalJava. Изначально спецификация разрабатывалась в рамках JCP (Java Community Process) как JSR 68. Позже её варианты развились в отдельные JSR. Sun предоставляет образец реализации (англ. reference implementation) спецификации, но до недавнего времени не предоставляла бесплатной реализации среды выполнения (англ. runtime environment) Java ME для мобильных устройств. 22 декабря 2006 исходный код Java ME был выпущен под лицензией GNU General Public License, проект получил название phoneME[1].

Отличительными особенностями устройств с ограниченными ресурсами являются ограниченная вычислительная мощность, ограниченный объём памяти, малый размер дисплея, питание от портативной батареи, а также низкоскоростные и недостаточно надёжные коммуникационные возможности. Типичный современный мобильный телефон содержит внутри 32-разрядный RISC-процессор с тактовой частотой 150-250 МГц, имеет объём оперативной памяти около 1-2 Мб, цветной дисплей размером 2 дюйма и имеет возможность соединения с Интернетом посредством GPRS или EDGE со скоростью до 474 кбит/с, которое при этом фундаментально ненадёжно, поскольку скорость передачи данных может неожиданно упасть, или соединение может быть вообще полностью потеряно.

Java ME специфицирует две базовые конфигурации, которые определяют требования к виртуальной машине (ограничение набора допустимых инструкций и др.), а также минимальный набор базовых классов: CLDC (Connected Limited Device Configuration — конфигурация устройства с ограниченными ресурсами и коммуникационными возможностями) и CDC (Connected Device Configuration — конфигурация устройства с нормальными ресурсами и коммуникационными возможностями).

Java ME также определяет несколько так называемых профилей (англ. profiles), которые дополняют и расширяют упомянутые выше конфигурации, в частности определяют модель приложения, возможности графического интерфейса, а также коммуникационные функции (например доступ к Интернету) и др.

В настоящее время самой распространённой конфигурацией является CLDC, для которого разработан профиль MIDP (Mobile Information Device Profile — профиль для мобильного устройства с информационными функциями). Приложения, написанные для этого профиля, называются мидлетами (англ. MIDlet). Другим популярным профилем для CLDC является DoJa, разработанный фирмой NTT DoCoMo для её собственного сервиса iMode. iMode весьма распространён в Японии, и в меньшей степени в Европе и на Дальнем Востоке.

Конфигурация CLDC успешно используется в большинстве современных мобильных телефонов и портативных органайзеров. По данным компании Sun Microsystems к концу 2004 года в мире было выпущено более 579 миллионов мобильных устройств с поддержкой этой конфигурации Java. Это делает Java ME доминирующей технологией Java в мире. Объёмы производства мобильных телефонов значительно превышают количество других компьютерных устройств, способных исполнять приложения на Java (например, персональных компьютеров).

См. также

Примечания

  1. Подробности о phoneME см. на странице проекта.

Ссылки

Просмотр этого шаблона Java
Платформы Java CardJava MEJava SEJava EE Wave.svg
Технологии Sun JavaJava Development KitOpenJDKWTKJava Virtual MachineJavaFXJAXPSquawk
Основные сторонние технологии GNU Classpath • GNU компилятор для Java • Kaffe • TopLink • Apache HarmonyApache StrutsSpring Framework • Dalvik • HibernateJBoss • Processing • Dozer • AspectJ
История История версий JavaКритика JavaJava Community ProcessSun Microsystems • Свободные реализации Java
Свойства языка Байткод • Синтаксис • АпплетыСервлетыМидлетыJavaServer PagesWeb StartEnterprise JavaBeans
Скриптовые языки Java Tcl • JythonJRubyBeanShellGroovy • Judoscript • Sleep • Bean Scripting Framework • Yoix • Rhino
Конференции Java JavaOne