Connected Limited Device Configuration
Connected Limited Device Configuration (CLDC) — стандарт конфигурации Java ME для подключаемых к сети устройств с ограниченными вычислительными возможностями, таких как мобильные телефоны или пейджеры. Конфигурация — одна из частей, задающих платформу Java ME. Второй частью является профиль. Платформа, состоящая из CLDC и MIDP, в настоящее время наиболее распространена на рынке мобильных телефонов. На многих устройствах такая платформа расширена некоторым количеством дополнительных API, например интерфейсом 3D графики. Стандарт CLDC был разработан в рамках Java Community Process как JSR 30 (CLDC версии 1.0), и JSR 139 (CLDC 1.1).
Целевое устройствоПравить
Конфигурация описывает устройство, на которое может быть установлена, следующим образом[1].
- Минимальный объём ПЗУ: 128 килобайт для CLDC 1.0, 160 килобайт для CLDC 1.1
- Минимальный объём ОЗУ: 32 килобайта
- Процессор: 16- или 32-битный
- Низкое энергопотребление
- Подключение к какой-либо сети, в том числе беспроводной, с нестабильным соединением и ограниченной скоростью передачи данных
Основные отличия версии 1.1Править
CLDC 1.1 является прямым продолжением CLDC 1.0, и обладает полной обратной совместимостью. Следующие возможности были добавлены в новую версию[2].
- Поддержка чисел с плавающей точкой. Здесь следует иметь в виду, что обязательным является поддержка типов float и методов для работы с ними в языке Java, что не означает требования их аппаратной поддержки процессором. Например, наиболее распространенные на рынке мобильных телефонов процессоры ARM такой возможностью не обладают, хотя множество телефонов, использующих этот процессор, имеют конфигурацию CLDC 1.1 (используется Эмуляция)
- Добавлена возможность работы со слабыми ссылками (англ. Weak references)
- Требования к ПЗУ увеличены со 160 до 192 килобайт
- Некоторые интерфейсы переработаны для увеличения совместимости с Java SE
- В спецификацию внесены различные исправления и уточнения неоднозначных мест
Основные интерфейсыПравить
Интерфейсы CLDC в основном являются подмножеством аналогичных интерфейсов «большой» Java — Java SE.
- java.lang — фундаментальные классы, используемые большинством программ Java. Например, Integer, String, математические функции, работа с потоками
- java.io — набор базовых классов ввода-вывода
- java.util — набор вспомогательных классов: работа с массивами и с датой/временем
- java.lang.ref — добавленная в CLDC 1.1 возможность работы со слабыми ссылками
- java.security — система безопасности (разграничение доступа к системным ресурсам)
- javax.microedition.io — расширенный интерфейс ввода вывода, для работы с различного рода соединениями
ПрофилиПравить
Конфигурация описывает только низкоуровневую часть платформы: возможности языка Java, его виртуальной машины, и базовые классы. Конфигурация призвана объединять все устройства со сходными вычислительными возможностями, независимо от их назначания.
Более высокоуровневой частью платформы является профиль. Предполагается, что профиль будет задаваться для каждого крупного класса устройств (мобильные телефоны, игровые автоматы, бытовые приборы).[3]
Mobile Information Device ProfileПравить
MIDP описывает профиль Java ME для мобильных телефонов. Он включает в себя набор классов для построения графического интерфейса на экране жидкокристаллического дисплея. Приложения, написанные для этого профиля, называются Мидлетами. Почти все новые сотовые телефоны поддерживают MIDP одной из версий, и это сейчас де-факто стандарт скачиваемых игр для телефонов.
Information Module ProfileПравить
IMP (JSR-195) — стандарт Информационного Модуля. Целевые классы устройств — торговые автоматы, маршрутизаторы, и другие устройства, с очень простым, или вовсе отсутствующим дисплеем, но обладающие неким сетевым соединением. Этот стандарт представляет собой подможество интерфейсов MIDP 1.0. Основное отличие от MIDP - отсутствие классов для работы с графическим интерфейсом.
Другие профилиПравить
Существуют также профили, не стандартизированные в рамках JCP, например, DoJa.
См. такжеПравить
- Connected Device Configuration (CDC) — аналогичная конфигурация Java ME, но предназначенная для КПК
- Sun Java Wireless Toolkit — базовый набор средств разработки для платформы CLDC/MIDP
ПримечанияПравить
- ↑ Спецификации CLDC 1.1.1/1.0, пункт 2.1 (Goals)
- ↑ Спецификация CLDC 1.1.1, пункт 1.2 (Main Differences Between CLDC Specification Versions 1.1 and 1.0)
- ↑ Описание KVM и CLDC Архивная копия от 25 июля 2008 на Wayback Machine, параграфы «J2ME Building Blocks: Configurations and Profiles» и «J2ME Profiles»
СсылкиПравить
- JSR 139 (CLDC 1.1)
- JSR 30 (CLDC 1.0)
- Домашняя страница CLDC на сайте фирмы Sun