SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Introducción a la plataforma J2ME Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
Contenido ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción J2ME es un subconjunto de la plataforma Java preparado para desarrollar aplicaciones para dispositivos móviles con escasos recursos (memoria, pantalla, dispositivos de entrada, etc) como lo son teléfonos celulares, PDAs, beepers, etc. Imágen tomada de  developers.sun.com .
Introducción Basa su arquitectura en una máquina virtual (JVM) cuya implementación es dependiente del proveedor del dispositivo, sin embargo esta debe cumplir con el estándar básico. Con esto Java intenta extender su premisa “ write it once, run it everywhere ” a los dispositivos móviles.  Sin embargo debido a las posibles variaciones entre los distintos proveedores esta permisa no siempre se cumple con precisión. En comparación con J2SE, el desarrollo de aplicaciones móviles se encuentra seriamente restringido debido a las limitaciones de recursos de los dispositivos objetivo.
Introducción Con respecto a los dispositivos específicos donde se ejecutarán las aplicaciones, el API de J2ME se encuentra dividido en  configuraciones  (familias horizontales de dispositivos): CDC y CLDC.  Sobre estas se apoyan los  perfiles  (familias verticales de dispositivos): MIDP, los cuales amplían el alcance de su implementación.  Mas adelante se profundizará el conocimiento de estos términos. La plataforma J2ME se construye a partir de la unión de múltiples especificaciones cuya gran mayoría pasan a través del  Java Community Process   (JCP), programa que recibe las solicitudes como  Java Specification Requests  (JSR) y las analiza para posteriormente descartarlas o implementarlas según sean sus conclusiones.
Arquitectura La arquitectura de J2ME busca ser lo mas modular y escalable posible para conservar su funcionalidad y portabilidad entre la muy heterogénea gama de dispositivos objetivo. Para esto se divide en capas según el tipo de dispositivo (características y funcionalidades) sobre el cual se va a implementar la plataforma.
Arquitectura El  sistema operativo  es desarrollado por el proveedor del dispositivo. Sobre él se implementa la  máquina virtual  de Java, la cual es también desarrollada por el proveedor del dispositivo adaptándose a las particularidades de este y cumpliendo con los requisitos mínimos especificados por  Sun Microsystems . El proveedor del dispositivo es libre de agregar funcionalidades (API) propietarias mas allá del estándar para explotar al máximo los recursos específicos del dispositivo, sin embargo si se utiliza este API particular las aplicaciones desarrolladas ya no serán portables entre otros dispositivos de diferentes proveedores.
Arquitectura La  configuración  se relaciona con el tipo de dispositivo y hace referencia al conjunto mínimo de características de la máquina virtual y de las librerías de clases que van a estar disponibles para un conjunto de dispositivos según sus características. Las  configuraciones  mas conocidas son la  CLDC  ( connected limited device configuration ) y la  CDC  ( connected device configuration ).
Arquitectura
Arquitectura El  perfil  se relaciona con el nivel de aplicación y define el conjunto mínimo de APIs disponibles para una determinada familia de dispositivos, de manera mas específica y especializada que la proporcionada por la  configuración . Los  perfiles  se implementan para una  configuración  especifica.  Las  aplicaciones  se desarrollan para un  perfil  determinado. Un dispositivo pertenece a una única  configuración  pero puede soportar múltiples  perfiles .
Arquitectura El primer  perfil  que se desarrollo y por ende el mas utilizado es  MIDP  ( mobile information device profile ) para CLDC.  Este perfil posibilita el desarrollo de aplicaciones móviles con intefaz gráfica de usuario, acceso a la red, sonido, seguridad, almacenamiento de datos, etc. Este es el  perfil  utilizado para desarrollar aplicaciones móviles destinadas a teléfonos móviles y beepers con pantallas reducidas, conexión HTTP inalámbrica y memoria limitada.
Arquitectura
Configuraciones ,[object Object],[object Object],[object Object],[object Object],[object Object]
Configuraciones - CDC Configuración para dispositivos conectados , definida por la especificación  JSR-36 . Orientada a dispositivos con procesadores de 32 bits y 2MB o mas de memoria total disponible (para RAM, ROM, JVM y librerías).  Cuentan con conexión a la red (generalmente inalámbrica) y con un ancho de banda limitado. Ejemplos de estos dispositivos son equipos portátiles corriendo Windows Mobile, equipos de televisión interactiva, terminales de puntos de venta (POS), sistemas de navegación, consolas de videojuegos, reproductores de audio digital, etc. A esta  configuración  se le asocia el perfil  Foundation Profile .
Configuraciones - CLDC Configuración para dispositivos con conexión limitada , definida por la especificación  JSR-30  y mejorada por la  JSR-139 . Orientada a dispositivos con procesadores de 16 o 32 bits entre 8 a 32 Mhz y con una cantidad total disponible de memoria de al menos 160 a 512KB hasta 2MB incluyendo el perfil y paquetes adicionales.  Cuentan con una conexión de red con acceso intermitente y bajo ancho de banda. Su máquina virtual se conoce como  Kilo Virtual Machine  (KVM).
Configuraciones - CLDC Es la configuración mas restrictiva en término de recursos: potencia de cálculo, memoria, alimentación, despliegue de información, interfaces de entrada, etc. A esta  configuración  se le asocia el perfil  MIDP . Los teléfonos móviles son un buen ejemplo de esta configuración.
Diferencias entre J2SE y CLDC No hay soporte para tipos y operaciones de punto flotante.  La revisión [1.1] empieza a incluír este soporte. Sólo se definen las excepciones  Error ,  OutOfMemoryError  y  VirtualMachineError .  En [1.1] se incluye  NoClassDefFoundError . Cualquier otra condición de error será tratada de acuerdo a la implementación de la JVM. No hay soporte para  Java Native Interface  (JNI),  reflexión ,  serialización  ni ninguna interfaz de bajo nivel que dependa de ellos.  En [1.1] se incluye soporte para  K Native Interface  (KNI).
Diferencias entre J2SE y CLDC No hay finalización de objetos (llamado al método  finalize() ). No se permiten  cargadores de clases  específicos, es decir, no se puede influír en la manera como se cargan las clases. El proceso de verificación se realiza en dos etapas.  La  preverificación  se realiza en el momento del desarrollo. Para el soporte de internacionalización, CLDC debe proporcionar el soporte a la conversión entre flujos ( streams ) y  Unicode .
Diferencias entre J2SE y CLDC Las clases de J2SE que son  incluidas  por J2ME deberán ser un subconjunto de las mismas, es decir, no pueden incluír miembros o métodos públicos adicionales. Todas las clases particulares a la configuración CLDC deberán residir bajo el paquete  javax.microedition .
Perfiles Un  perfil  es un conjunto de clases que aumentan la funcionalidad de una  configuración  (para un grupo de dispositivos con unas características definidas) . El  perfil  mas utilizado es  Mobile Information Device Profile  (MIDP) para CLDC, el cual fue definido por  JSR-37  y mejorado por  JSR-118 .  Este perfil permite desarrollar aplicaciones con  interfaz de usuario, almacenamiento de datos, comunicación por red encriptada, desarrollo de juegos, manipulación de audio y video, etc . a dispositivos como teléfonos móviles y beepers.
Perfiles El  perfil  MIDP será el utilizado para el desarrollo de las aplicaciones móviles ( midlet ) durante este curso. Existen otros  perfiles  disponibles para el desarrollo de aplicaciones destinadas a otros dispositivos cmo son el  PDA Profile  (PDAP) basado en MIDP para el desarrollo de aplicaciones para PDAs, el  Foundation Profile  (FP) que incluye clases de J2SE adicionales, el  Personal Basis Profile  (PBP) que incluye soporte para  AWT  y el  Personal Profile  (PP) que incluye soporte para  applets  e interfaz gráfica de usuario ampliada.  Estos últimos basados en la  configuración  CDC.
Perfiles - MIDP Como se mencionó anteriormente, el  perfil  MIDP amplía la funcionalidad (API) de la plataforma Java mas allá de lo provisto por la  configuración  CLDC para una familia de dispositivos con recursos limitados. Por razones de seguridad y portabilidad, MIDP no permite el acceso directo al sistema operativo. Sun Microsystems proporciona la implementación de referencia de este  perfil , la cual sirve como base de implementación para los proveedores de los dispositivos quienes deben desarrollar un código nativo adicional para integrar la plataforma con su sistema operativo específico.  Este código de integración no es portable.
MIDP - Requisitos de  hardware Estos son los requisitos mínimos de  hardware  asociados a los dispositivos con soporte para el  perfil  MIDP. Al menos 128KB de memoria para almacenar la implementación de MIDP además de lo requerido por la implementación de CLDC.  Se requieren también 32KB de espacio para la pila de objetos y 8KB de memoria no volátil para guardar información persistente ante la falta de suministro eléctrico.  Los teléfonos actuales proveen comunmente al menos 2MB de memoria a la plataforma. Pantallas de mínimo 96x54 píxeles y soportar al menos dos colores.
MIDP - Requisitos de  hardware Teclado numérico, teclas de dirección y botón de selección.  Los teléfonos móviles cuentan adicionalmente con representación de las teclas alfanuméricas y botones de opciones. Algún tipo de conexión a la red (probablemente inalámbrica, ejemplo  WIFI  y  GPRS ), ya sea de manera incorporada o a través de un módem externo. Con respecto a la red no se asume conexión permanente ni soporte directo para  TCP/IP  por parte del  perfil , sin embargo debido al extenso uso que se le da al protocolo  HTTP  es necesario que el proveedor del dispositivo implemente el soporte para la versión 1.1.
MIDP – Requisitos de  software Estos son los requisitos mínimos de  software  asociados a los dispositivos con soporte para el  perfil  MIDP. Soporte para comunicación por red, ya sea directamente el protocolo HTTP, un API de bajo nivel que permita implementarlo ( sockets ) o indirectamente como una  pasarela . Acceso a los dispositivos de entrada (teclado,  stylus , etc), generación de eventos durante su manipulación y conversión de códigos a un conjunto estándar.
MIDP – Requisitos de  software Acceso a la pantalla del dispositivo como un  mapa de bits . Almacenamiento permanente que persista cuando se apague el dispositivo y una interfaz del sistema operativo para su manipulación.
Paquetes opcionales Los paquetes opcionales son librerías de clases (API) que proveen características adicionales y específicas pero que debido a sus características no pertenecen a ninguna configuración o perfil, ni definen por si mismos un entorno completo de aplicación, sin embargo pueden ser utilizadas y compartidas por diferentes perfiles. Su soporte por parte del dispositivo será opcional, es decir, si el dispositivo cuenta con los recursos de hardware y software necesarios para implementar los paquetes, por este motivo no pueden ser incluídos en un perfil general. Ejemplos de estos paquetes opcionales son los relacionados con  Bluetooth ,  Wireless Messaging API  (WMA),  RMI Optional Package  y  JDBC Optional Package  entre otros.
Máquinas virtuales Kilo Virtual Machine  (KVM) para CLDC y  Compact Virtual Machine  (CVM) para CDC.  Desarrolladas por Sun Microsystems. Los proveedores de dispositivos pueden licenciar estas máquinas virtuales o realizar su propia implementación que cumpla con los requerimientos de la especificación. Su implementación se inició con el proyecto Spotless cuyo objetivo era la implementación de una máquina virtual completa para los dispositivos  PalmPilot  con  PalmOS .
Características de las VM Tamaño de la memoria virtual y librerías de clases entre 50 y 80KB de código objeto. Reducida utilización de memoria (KB). Rendimiento efectivo en entornos de 16 y 32 bits. Arquitectura portable minimizando las secciones de código dependientes del dispositivo.
Características de las VM Recolección de basura  ( garbage collection ) y  multihilo  ( multithreading ) independientes del sistema operativo. Diseño modular para la configuración de dispositivos específicos. Implementación de tipos de datos de punto flotante y enteros largos son opcionales. No es necesaria la implementación de la finalización de objetos.
Características de las VM No se incluye el soporte para  Java Native Interface  (JNI). La verificación de las clases se realiza en el momento del desarrollo (preverificación). El soporte para arreglos multidimensionales es opcional. No es posible manipular directamente por parte de la aplicación la carga de clases.
Fin de la presentación. Creative Commons (CC)

Weitere ähnliche Inhalte

Was ist angesagt?

Dispositivos activos y pasivos redes
Dispositivos activos y pasivos redesDispositivos activos y pasivos redes
Dispositivos activos y pasivos redesJûän Êztêbânn R
 
2. Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...
2.	Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...2.	Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...
2. Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...wilber147
 
investigacion topicos avanzados de programacion unidad dos interfaz grafica
investigacion topicos avanzados de programacion unidad dos interfaz graficainvestigacion topicos avanzados de programacion unidad dos interfaz grafica
investigacion topicos avanzados de programacion unidad dos interfaz graficaAnel Sosa
 
Act.4 - Cuadro comparativo - Lengujes de desarrollo
Act.4 - Cuadro comparativo - Lengujes de desarrolloAct.4 - Cuadro comparativo - Lengujes de desarrollo
Act.4 - Cuadro comparativo - Lengujes de desarrolloDafne Alcantar
 
Lectura 3 Modelo De Analisis
Lectura 3   Modelo De AnalisisLectura 3   Modelo De Analisis
Lectura 3 Modelo De Analisisguest0a6e49
 
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...José Antonio Sandoval Acosta
 
Modelado de requisitos
Modelado de requisitosModelado de requisitos
Modelado de requisitosKleo Jorgee
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASEI R
 
Métodos estructurados
Métodos estructuradosMétodos estructurados
Métodos estructuradosAndres Morales
 
Redes inalambricas
Redes inalambricasRedes inalambricas
Redes inalambricaserick ardila
 
Redes inalambricas (Historia , Seguridad , etc )
Redes inalambricas (Historia , Seguridad , etc )Redes inalambricas (Historia , Seguridad , etc )
Redes inalambricas (Historia , Seguridad , etc )Gerardo Plasencia
 
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles Unidad 3: Desarrollo de aplicaciones para dispositivos móviles
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles Juan Anaya
 
Estandares de lan inalambricas
Estandares de lan inalambricasEstandares de lan inalambricas
Estandares de lan inalambricasmanuel acosta
 
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreriaJesus Eduardo Castillo Vera
 

Was ist angesagt? (20)

Metodologia msf
Metodologia msfMetodologia msf
Metodologia msf
 
Dispositivos activos y pasivos redes
Dispositivos activos y pasivos redesDispositivos activos y pasivos redes
Dispositivos activos y pasivos redes
 
2. Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...
2.	Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...2.	Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...
2. Estándar IEEE 802.x (Características, Fundamentos, Controladores de Dispos...
 
investigacion topicos avanzados de programacion unidad dos interfaz grafica
investigacion topicos avanzados de programacion unidad dos interfaz graficainvestigacion topicos avanzados de programacion unidad dos interfaz grafica
investigacion topicos avanzados de programacion unidad dos interfaz grafica
 
Act.4 - Cuadro comparativo - Lengujes de desarrollo
Act.4 - Cuadro comparativo - Lengujes de desarrolloAct.4 - Cuadro comparativo - Lengujes de desarrollo
Act.4 - Cuadro comparativo - Lengujes de desarrollo
 
Lectura 3 Modelo De Analisis
Lectura 3   Modelo De AnalisisLectura 3   Modelo De Analisis
Lectura 3 Modelo De Analisis
 
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
 
Modelado de requisitos
Modelado de requisitosModelado de requisitos
Modelado de requisitos
 
Introducción a SOA
Introducción a SOAIntroducción a SOA
Introducción a SOA
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASE
 
Métodos estructurados
Métodos estructuradosMétodos estructurados
Métodos estructurados
 
Redes inalambricas
Redes inalambricasRedes inalambricas
Redes inalambricas
 
Redes inalambricas (Historia , Seguridad , etc )
Redes inalambricas (Historia , Seguridad , etc )Redes inalambricas (Historia , Seguridad , etc )
Redes inalambricas (Historia , Seguridad , etc )
 
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles Unidad 3: Desarrollo de aplicaciones para dispositivos móviles
Unidad 3: Desarrollo de aplicaciones para dispositivos móviles
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Estandares de lan inalambricas
Estandares de lan inalambricasEstandares de lan inalambricas
Estandares de lan inalambricas
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Redes del computador unidad 2
Redes del computador unidad 2Redes del computador unidad 2
Redes del computador unidad 2
 
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria
102036902 tesis-jhordan-desarrollode-sistema-de-ventas-para-libreria
 
Antecedentes MSF
Antecedentes MSFAntecedentes MSF
Antecedentes MSF
 

Ähnlich wie Introducción a la plataforma J2ME

Ähnlich wie Introducción a la plataforma J2ME (20)

La configuración CLDC
La configuración CLDCLa configuración CLDC
La configuración CLDC
 
La configuracion cldc_imprimible
La configuracion cldc_imprimibleLa configuracion cldc_imprimible
La configuracion cldc_imprimible
 
La configuracion cldc
La configuracion cldcLa configuracion cldc
La configuracion cldc
 
La configuración cldc imprimible
La configuración cldc imprimibleLa configuración cldc imprimible
La configuración cldc imprimible
 
La arquitectura j2 me
La arquitectura j2 meLa arquitectura j2 me
La arquitectura j2 me
 
Evidencias
EvidenciasEvidencias
Evidencias
 
J2ME
J2MEJ2ME
J2ME
 
J2ME
J2MEJ2ME
J2ME
 
Java Micro Edition "J2ME"
Java Micro Edition "J2ME"Java Micro Edition "J2ME"
Java Micro Edition "J2ME"
 
Java micro edition 2012
Java micro edition 2012Java micro edition 2012
Java micro edition 2012
 
Presentacion j2me
Presentacion j2mePresentacion j2me
Presentacion j2me
 
J2me Presentacion
J2me PresentacionJ2me Presentacion
J2me Presentacion
 
J2 me
J2 meJ2 me
J2 me
 
J2 me o java me
J2 me o java meJ2 me o java me
J2 me o java me
 
Tecnología androide
Tecnología androideTecnología androide
Tecnología androide
 
Tecnología androide
Tecnología androideTecnología androide
Tecnología androide
 
Tecnología androide_Mishelle_Ruiz
Tecnología androide_Mishelle_RuizTecnología androide_Mishelle_Ruiz
Tecnología androide_Mishelle_Ruiz
 
arquitectura android y tecnologia mpls
arquitectura android y tecnologia mplsarquitectura android y tecnologia mpls
arquitectura android y tecnologia mpls
 
Actividad no. 3 dispositivos moviles
Actividad no. 3 dispositivos movilesActividad no. 3 dispositivos moviles
Actividad no. 3 dispositivos moviles
 
Unidad jme-01--ingbarcia-fina-2011
Unidad jme-01--ingbarcia-fina-2011Unidad jme-01--ingbarcia-fina-2011
Unidad jme-01--ingbarcia-fina-2011
 

Mehr von Jorge Iván Meza Martínez

Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Jorge Iván Meza Martínez
 
Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Jorge Iván Meza Martínez
 
GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128Jorge Iván Meza Martínez
 
Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Jorge Iván Meza Martínez
 
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Jorge Iván Meza Martínez
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IJorge Iván Meza Martínez
 
Generación del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseMEGeneración del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseMEJorge Iván Meza Martínez
 
Generación del midlet HolaMundo utilizando las herramientas de línea de comando
Generación del midlet HolaMundo utilizando las herramientas de línea de comandoGeneración del midlet HolaMundo utilizando las herramientas de línea de comando
Generación del midlet HolaMundo utilizando las herramientas de línea de comandoJorge Iván Meza Martínez
 
Generación del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTKGeneración del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTKJorge Iván Meza Martínez
 
Introducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google MappletsIntroducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google MappletsJorge Iván Meza Martínez
 

Mehr von Jorge Iván Meza Martínez (18)

Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203
 
Presentación GridUAM 201112
Presentación GridUAM 201112Presentación GridUAM 201112
Presentación GridUAM 201112
 
Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517
 
GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128
 
Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09
 
Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07
 
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
 
Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6
 
Buscador de Talento Amigo - Presentación
Buscador de Talento Amigo - PresentaciónBuscador de Talento Amigo - Presentación
Buscador de Talento Amigo - Presentación
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte I
 
Generación del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseMEGeneración del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseME
 
Generación del midlet HolaMundo utilizando las herramientas de línea de comando
Generación del midlet HolaMundo utilizando las herramientas de línea de comandoGeneración del midlet HolaMundo utilizando las herramientas de línea de comando
Generación del midlet HolaMundo utilizando las herramientas de línea de comando
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Generación del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTKGeneración del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTK
 
Disección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2MEDisección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2ME
 
Desarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer MappletDesarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer Mapplet
 
Introducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google MappletsIntroducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google Mapplets
 
Midlets con J2ME
Midlets con J2MEMidlets con J2ME
Midlets con J2ME
 

Kürzlich hochgeladen

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Kürzlich hochgeladen (20)

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

Introducción a la plataforma J2ME

  • 1. Introducción a la plataforma J2ME Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
  • 2.
  • 3. Introducción J2ME es un subconjunto de la plataforma Java preparado para desarrollar aplicaciones para dispositivos móviles con escasos recursos (memoria, pantalla, dispositivos de entrada, etc) como lo son teléfonos celulares, PDAs, beepers, etc. Imágen tomada de developers.sun.com .
  • 4. Introducción Basa su arquitectura en una máquina virtual (JVM) cuya implementación es dependiente del proveedor del dispositivo, sin embargo esta debe cumplir con el estándar básico. Con esto Java intenta extender su premisa “ write it once, run it everywhere ” a los dispositivos móviles. Sin embargo debido a las posibles variaciones entre los distintos proveedores esta permisa no siempre se cumple con precisión. En comparación con J2SE, el desarrollo de aplicaciones móviles se encuentra seriamente restringido debido a las limitaciones de recursos de los dispositivos objetivo.
  • 5. Introducción Con respecto a los dispositivos específicos donde se ejecutarán las aplicaciones, el API de J2ME se encuentra dividido en configuraciones (familias horizontales de dispositivos): CDC y CLDC. Sobre estas se apoyan los perfiles (familias verticales de dispositivos): MIDP, los cuales amplían el alcance de su implementación. Mas adelante se profundizará el conocimiento de estos términos. La plataforma J2ME se construye a partir de la unión de múltiples especificaciones cuya gran mayoría pasan a través del Java Community Process (JCP), programa que recibe las solicitudes como Java Specification Requests (JSR) y las analiza para posteriormente descartarlas o implementarlas según sean sus conclusiones.
  • 6. Arquitectura La arquitectura de J2ME busca ser lo mas modular y escalable posible para conservar su funcionalidad y portabilidad entre la muy heterogénea gama de dispositivos objetivo. Para esto se divide en capas según el tipo de dispositivo (características y funcionalidades) sobre el cual se va a implementar la plataforma.
  • 7. Arquitectura El sistema operativo es desarrollado por el proveedor del dispositivo. Sobre él se implementa la máquina virtual de Java, la cual es también desarrollada por el proveedor del dispositivo adaptándose a las particularidades de este y cumpliendo con los requisitos mínimos especificados por Sun Microsystems . El proveedor del dispositivo es libre de agregar funcionalidades (API) propietarias mas allá del estándar para explotar al máximo los recursos específicos del dispositivo, sin embargo si se utiliza este API particular las aplicaciones desarrolladas ya no serán portables entre otros dispositivos de diferentes proveedores.
  • 8. Arquitectura La configuración se relaciona con el tipo de dispositivo y hace referencia al conjunto mínimo de características de la máquina virtual y de las librerías de clases que van a estar disponibles para un conjunto de dispositivos según sus características. Las configuraciones mas conocidas son la CLDC ( connected limited device configuration ) y la CDC ( connected device configuration ).
  • 10. Arquitectura El perfil se relaciona con el nivel de aplicación y define el conjunto mínimo de APIs disponibles para una determinada familia de dispositivos, de manera mas específica y especializada que la proporcionada por la configuración . Los perfiles se implementan para una configuración especifica. Las aplicaciones se desarrollan para un perfil determinado. Un dispositivo pertenece a una única configuración pero puede soportar múltiples perfiles .
  • 11. Arquitectura El primer perfil que se desarrollo y por ende el mas utilizado es MIDP ( mobile information device profile ) para CLDC. Este perfil posibilita el desarrollo de aplicaciones móviles con intefaz gráfica de usuario, acceso a la red, sonido, seguridad, almacenamiento de datos, etc. Este es el perfil utilizado para desarrollar aplicaciones móviles destinadas a teléfonos móviles y beepers con pantallas reducidas, conexión HTTP inalámbrica y memoria limitada.
  • 13.
  • 14. Configuraciones - CDC Configuración para dispositivos conectados , definida por la especificación JSR-36 . Orientada a dispositivos con procesadores de 32 bits y 2MB o mas de memoria total disponible (para RAM, ROM, JVM y librerías). Cuentan con conexión a la red (generalmente inalámbrica) y con un ancho de banda limitado. Ejemplos de estos dispositivos son equipos portátiles corriendo Windows Mobile, equipos de televisión interactiva, terminales de puntos de venta (POS), sistemas de navegación, consolas de videojuegos, reproductores de audio digital, etc. A esta configuración se le asocia el perfil Foundation Profile .
  • 15. Configuraciones - CLDC Configuración para dispositivos con conexión limitada , definida por la especificación JSR-30 y mejorada por la JSR-139 . Orientada a dispositivos con procesadores de 16 o 32 bits entre 8 a 32 Mhz y con una cantidad total disponible de memoria de al menos 160 a 512KB hasta 2MB incluyendo el perfil y paquetes adicionales. Cuentan con una conexión de red con acceso intermitente y bajo ancho de banda. Su máquina virtual se conoce como Kilo Virtual Machine (KVM).
  • 16. Configuraciones - CLDC Es la configuración mas restrictiva en término de recursos: potencia de cálculo, memoria, alimentación, despliegue de información, interfaces de entrada, etc. A esta configuración se le asocia el perfil MIDP . Los teléfonos móviles son un buen ejemplo de esta configuración.
  • 17. Diferencias entre J2SE y CLDC No hay soporte para tipos y operaciones de punto flotante. La revisión [1.1] empieza a incluír este soporte. Sólo se definen las excepciones Error , OutOfMemoryError y VirtualMachineError . En [1.1] se incluye NoClassDefFoundError . Cualquier otra condición de error será tratada de acuerdo a la implementación de la JVM. No hay soporte para Java Native Interface (JNI), reflexión , serialización ni ninguna interfaz de bajo nivel que dependa de ellos. En [1.1] se incluye soporte para K Native Interface (KNI).
  • 18. Diferencias entre J2SE y CLDC No hay finalización de objetos (llamado al método finalize() ). No se permiten cargadores de clases específicos, es decir, no se puede influír en la manera como se cargan las clases. El proceso de verificación se realiza en dos etapas. La preverificación se realiza en el momento del desarrollo. Para el soporte de internacionalización, CLDC debe proporcionar el soporte a la conversión entre flujos ( streams ) y Unicode .
  • 19. Diferencias entre J2SE y CLDC Las clases de J2SE que son incluidas por J2ME deberán ser un subconjunto de las mismas, es decir, no pueden incluír miembros o métodos públicos adicionales. Todas las clases particulares a la configuración CLDC deberán residir bajo el paquete javax.microedition .
  • 20. Perfiles Un perfil es un conjunto de clases que aumentan la funcionalidad de una configuración (para un grupo de dispositivos con unas características definidas) . El perfil mas utilizado es Mobile Information Device Profile (MIDP) para CLDC, el cual fue definido por JSR-37 y mejorado por JSR-118 . Este perfil permite desarrollar aplicaciones con interfaz de usuario, almacenamiento de datos, comunicación por red encriptada, desarrollo de juegos, manipulación de audio y video, etc . a dispositivos como teléfonos móviles y beepers.
  • 21. Perfiles El perfil MIDP será el utilizado para el desarrollo de las aplicaciones móviles ( midlet ) durante este curso. Existen otros perfiles disponibles para el desarrollo de aplicaciones destinadas a otros dispositivos cmo son el PDA Profile (PDAP) basado en MIDP para el desarrollo de aplicaciones para PDAs, el Foundation Profile (FP) que incluye clases de J2SE adicionales, el Personal Basis Profile (PBP) que incluye soporte para AWT y el Personal Profile (PP) que incluye soporte para applets e interfaz gráfica de usuario ampliada. Estos últimos basados en la configuración CDC.
  • 22. Perfiles - MIDP Como se mencionó anteriormente, el perfil MIDP amplía la funcionalidad (API) de la plataforma Java mas allá de lo provisto por la configuración CLDC para una familia de dispositivos con recursos limitados. Por razones de seguridad y portabilidad, MIDP no permite el acceso directo al sistema operativo. Sun Microsystems proporciona la implementación de referencia de este perfil , la cual sirve como base de implementación para los proveedores de los dispositivos quienes deben desarrollar un código nativo adicional para integrar la plataforma con su sistema operativo específico. Este código de integración no es portable.
  • 23. MIDP - Requisitos de hardware Estos son los requisitos mínimos de hardware asociados a los dispositivos con soporte para el perfil MIDP. Al menos 128KB de memoria para almacenar la implementación de MIDP además de lo requerido por la implementación de CLDC. Se requieren también 32KB de espacio para la pila de objetos y 8KB de memoria no volátil para guardar información persistente ante la falta de suministro eléctrico. Los teléfonos actuales proveen comunmente al menos 2MB de memoria a la plataforma. Pantallas de mínimo 96x54 píxeles y soportar al menos dos colores.
  • 24. MIDP - Requisitos de hardware Teclado numérico, teclas de dirección y botón de selección. Los teléfonos móviles cuentan adicionalmente con representación de las teclas alfanuméricas y botones de opciones. Algún tipo de conexión a la red (probablemente inalámbrica, ejemplo WIFI y GPRS ), ya sea de manera incorporada o a través de un módem externo. Con respecto a la red no se asume conexión permanente ni soporte directo para TCP/IP por parte del perfil , sin embargo debido al extenso uso que se le da al protocolo HTTP es necesario que el proveedor del dispositivo implemente el soporte para la versión 1.1.
  • 25. MIDP – Requisitos de software Estos son los requisitos mínimos de software asociados a los dispositivos con soporte para el perfil MIDP. Soporte para comunicación por red, ya sea directamente el protocolo HTTP, un API de bajo nivel que permita implementarlo ( sockets ) o indirectamente como una pasarela . Acceso a los dispositivos de entrada (teclado, stylus , etc), generación de eventos durante su manipulación y conversión de códigos a un conjunto estándar.
  • 26. MIDP – Requisitos de software Acceso a la pantalla del dispositivo como un mapa de bits . Almacenamiento permanente que persista cuando se apague el dispositivo y una interfaz del sistema operativo para su manipulación.
  • 27. Paquetes opcionales Los paquetes opcionales son librerías de clases (API) que proveen características adicionales y específicas pero que debido a sus características no pertenecen a ninguna configuración o perfil, ni definen por si mismos un entorno completo de aplicación, sin embargo pueden ser utilizadas y compartidas por diferentes perfiles. Su soporte por parte del dispositivo será opcional, es decir, si el dispositivo cuenta con los recursos de hardware y software necesarios para implementar los paquetes, por este motivo no pueden ser incluídos en un perfil general. Ejemplos de estos paquetes opcionales son los relacionados con Bluetooth , Wireless Messaging API (WMA), RMI Optional Package y JDBC Optional Package entre otros.
  • 28. Máquinas virtuales Kilo Virtual Machine (KVM) para CLDC y Compact Virtual Machine (CVM) para CDC. Desarrolladas por Sun Microsystems. Los proveedores de dispositivos pueden licenciar estas máquinas virtuales o realizar su propia implementación que cumpla con los requerimientos de la especificación. Su implementación se inició con el proyecto Spotless cuyo objetivo era la implementación de una máquina virtual completa para los dispositivos PalmPilot con PalmOS .
  • 29. Características de las VM Tamaño de la memoria virtual y librerías de clases entre 50 y 80KB de código objeto. Reducida utilización de memoria (KB). Rendimiento efectivo en entornos de 16 y 32 bits. Arquitectura portable minimizando las secciones de código dependientes del dispositivo.
  • 30. Características de las VM Recolección de basura ( garbage collection ) y multihilo ( multithreading ) independientes del sistema operativo. Diseño modular para la configuración de dispositivos específicos. Implementación de tipos de datos de punto flotante y enteros largos son opcionales. No es necesaria la implementación de la finalización de objetos.
  • 31. Características de las VM No se incluye el soporte para Java Native Interface (JNI). La verificación de las clases se realiza en el momento del desarrollo (preverificación). El soporte para arreglos multidimensionales es opcional. No es posible manipular directamente por parte de la aplicación la carga de clases.
  • 32. Fin de la presentación. Creative Commons (CC)