Открыть главное меню

Connected Limited Device Configuration

(перенаправлено с «CLDC»)

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].

Основные отличия версии 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.

См. такжеПравить

ПримечанияПравить

  1. Спецификации CLDC 1.1.1/1.0, пункт 2.1 (Goals)
  2. Спецификация CLDC 1.1.1, пункт 1.2 (Main Differences Between CLDC Specification Versions 1.1 and 1.0)
  3. Описание KVM и CLDC, параграфы «J2ME Building Blocks: Configurations and Profiles» и «J2ME Profiles»

СсылкиПравить