javaOrigen y breve descripción de J2ME - Arquitectura
Versión: 2.0, Septiembre, 2006

Juan Manuel Fernández Luna
Web: http://decsai.ugr.es/~jmfluna, Mail: jmfluna@decsai.ugr.es
IndiceInicioPerl

(C) Decsai
Web: http://decsai.ugr.es

La arquitectura de J2ME define configuraciones (configurations), perfiles (profiles) y paquetes opcionales, como elementos básicos para desarrollar aplicaciones que se ajustan a las características de un amplio rango de dispositivos. Cada combinación se optimiza según la memoria, la capacidad de procesamiento y de entrada/salida de una categoría específica de dispositivos.

Configuraciones

Las configuraciones están compuestas por una máquina virtual y un conjunto mínimo de bibliotecas de clases, las cuales serían un mínimo denominador común con que contarán todos los dispositivos de una configuración dada; o lo que es lo mismo ofrecen la funcionalidad para un rango particular de dispositivos con características comunes.

Existen dos configuraciones actualmente: Connected Limited Device Configuration (CLDC) y Connected Device Configuration (CDC):

En la siguiente figura podemos ver un cómo se relacionan las dos configuraciones existentes y también con respecto a J2SE.

Configuraciones J2ME

Las especificaciones de las configuraciones no indican ningún tipo de implementación de la máquina virtual, por lo que cada cual puede crear sus propios entornos de ejecución. Los que ha desarrollado Sun son Kilobyte Virtual Machine (KVM) para CLDC y C Virtual Machine (CVM).

En este curso estudiaremos de manera más detallada la configuración CLDC.

Perfiles

Con objeto de ofrecer un completo entorno de ejecución específico para cada categoría de dispositivo, las configuraciones se deben combinar con un conjunto de APIs de alto nivel, conocidas como perfiles, que definen el modelo de ciclo de vida de la aplicación, el interfaz de usuario y el acceso a las propiedades específicas del dispositivo. Algunos de los perfiles existentes son (varios todavía en la etapa de definición):

Actualmente el perfil más utilizado es MIDP, que será el que estudiemos con profundidad en este curso.

En el siguiente gráfico podemos ver un esquema modular con las diferentes configuraciones, perfiles y máquinas virtuales:

j2me

Las aplicaciones desarrolladas para un determinado perfil serán portables a cualquier dispositivo que soporte ese perfil. Cabe destacar también que un mismo dispositivo puede soportar varios perfiles y que sobre una configuración también pueden residir diversos perfiles.