sábado, 20 de febrero de 2010

Arquitectura Móvil con Java Micro Edition J2ME - Parte I

Entremos en materia, este post es dedicado a la Arquitectura Móvil  (Java 2 Micro Edition ) que es simplemente una tecnología avanzada en Java, desarrollada con la ayuda de Java Community Process Program o comunidad Java. JME es una versión reducida del API de Java y Java Virtual Machine que está diseñado para operar dentro de recursos limitados disponibles en ordenadores integrados y microcomputadoras.


J2ME está dirigido a desarrollos para dispositivos wireless y dispositivos digitales limitados que necesitan incorporar la funcionalidad multi-plataforma en sus productos. Un beneficio clave de la utilización de J2ME es la compatibilidad con todos los dispositivos habilitados para Java. Motorola , Nokia, Panasonic todos tienen Java-enabled devices. Una aplicación J2ME que procura el equilibrio de procesos entre el dispositivo local y el server-side.

El Java Community Process Program utiliza dos "enfoques" para abordar las necesidades de los pequeños dispositivos de cómputo.


  1. Configuraciones: Es el entorno Java de tiempo de ejecución y las clases básicas que operan en cada dispositivo. Una configuración define la Java Virtual Machine para un dispositivo informático de recursos limitados. Existen dos configuraciones.
    CLDC para dispositivos de mano: La CLDC (Connected configuración de dispositivos Limited) está diseñado para 16- bits o 32 bits, pequeños dispositivos digitales con memoria limitada. Estos dispositivos suelen tener entre 160 KB y 512 KB de memoria disponible. Por lo general, estos son alimentados por batería. Utilizan una pequeña red de banda ancha sin conexión wireless. Estos dispositivos utiliza una versión reducida de la JVM KJava Virtual Machine (KVM ). Estos dispositivos pueden ser entonces pagers o buscapersonas, asistentes digitales , teléfonos celulares, terminales especializados y cualquier otro dispositivo digital de mano personal.
    CDC para plug-in de dispositivos: CDC ( configuración de dispositivos conectados ) utilizan una arquitectura de 32-bit , por lo menos 2 MB de memoria disponible , y usan una JVM funcional completa. CDC incluyen dispositivos digitales set-top boxes, electrodomésticos, sistemas de navegación, terminales de punto de venta, y teléfonos inteligentes.

  2. Perfiles:Se define para las categorías de pequeños dispositivos digitales. Un perfil se compone de clases que permiten a los desarrolladores implementar características que se encuentran en un grupo relacionado de dispositivos moviles. Lista de perfiles J2ME:

    CLDC se usa con perfiles:
    - Mobile Information Device Profile (MIDP)
    - PDA Profile ( PDAP )

    * CDC  se utiliza con los perfies:
    - Foundation Profile
    - Game Profile
    - Personal Profile
    - Personal Basis Profile
    - RMI Profile
Arquitectura J2ME

Hay 5 capas en la Arquitectura J2ME. Estas son:


  • MIDP ( capa superior ):  Contiene APIs Java para conexiones de red de usuario, almacenamiento persistente , y la interfaz de usuario. También tiene acceso a las bibliotecas CLDC MIDP.

  • J2ME API´s  ( perfiles ): Que consiste en el conjunto mínimo de interfaces de programación de aplicaciones para el dispositivo movil.

  • Configuraciones: Que se ocupa de las interacciones entre el perfil y la JVM.

  • JVM

  • Sistema operativo ( capa inferior ) .
1,2 y 3 son capas de software.

Por ahora no vale explicar mucha teoría antes de empezar a diseñar, ya que esta teoría es basada en conceptos abstractos que difícilmente se pueden entender sin experimentar y a riesgo de parecer salirme de los fundamentos de la arquitectura del software que debe indicar la estructura, funcionamiento e interacción entre las partes de este tipo de aplicaciones, uno de los pilares de este blog; se podría decir que es necesario apelar a los dogmas de fe para superar esta etapa, tal como si de una religión se tratara, y después en post más avanzados explicar estos dogmas. Por tanto me propongo como método didáctico la construcción de sencillas aplicaciones que en su momento cimentaran en detalle los conceptos de la Arquitectura.

16 comentarios:

  1. Me parece una herramienta interesante, ya que en lo que lei encontre características como que J2ME está dirigido a desarrollos para dispositivos wireless y digitales, tiene compatibilidad con todos los dispositivos habilitados para Java. Se puede configurar para El CLDC para dispositivos de mano, CDC para plug-in de dispositivos. Los perfiles se definen para las categorías de pequeños dispositivos digitales. Su arquitectura esta compuesta por MIDP, J2ME API´s, configuraciones, Jvm, sistema operativo, aunque lo que dice el Ingeniero espero en la practica, entender bien los conceptos.

    ResponderEliminar
  2. Considero que esta herramienta, permite dar una vision diferente a las aplicaciones, ya que esta soportada por por aquellos dispositivos que funcionan con java, la implementacion se puede dar en pequeños y grandes dispositivos, en los cuales podemos implementar el J2ME y MIDP que son las arquitecturas de este modelo.

    ResponderEliminar
  3. Mucho por aprender de esta herramienta….

    ResponderEliminar
  4. Interesante tema, con la práctica empezaremos a dominarlo más.

    Ricardo Osorio

    ResponderEliminar
  5. creo que de esta tema es muy grande y hay muchas cosas por aprender y mas con los dispositivos moviles que son el dia a dia del ser humano.

    ResponderEliminar
  6. Es una Herramienta muy completa y que actualmente se esta utilizando en diferentes dispositivos,espero en el desarrollo del modulo poder comprender mas a fondo su fundamento.
    Rosalba

    ResponderEliminar
  7. Me parece buena su propuesta quedamos en sus manos...

    ResponderEliminar
  8. Tengo grandes expectativas con respecto al desarrollo de software para dispositivos móviles, me parece que el programa está bien enfocado y espero superar mis prejuicios con respecto al lenguaje java.

    ResponderEliminar
  9. El tema es muy interesante y aunque no se mucho sobre esto espero aprender todo lo necesario sobre el manejo de la arquitectura JME.


    Sandra Arévalo

    ResponderEliminar
  10. Se ve muy interesante la herramienta, creo que hay una gran tendencia hacia aplicaciones para estos dispositivos, ya iré entendiendo mejor su funcionamiento para poder poner en práctica los conocimientos que se adquieran.

    Camilo Tiriat B.

    ResponderEliminar
  11. Es una herramienta interezante, pero hay mucho que aprender acerca de la misma....

    Oscar Mora

    ResponderEliminar
  12. bueno, pues me genera curiosidad solo resta que sea de facil entendimiento y facil manejo.

    Ronald Contreras.

    ResponderEliminar
  13. A estudiar!!!!
    Pedro Luis Cifuentes

    ResponderEliminar
  14. interesante herramienta. a la espectativa de como resulta.

    ResponderEliminar
  15. La arquitectura J2ME aprovecha 2 ventajas de la programacion Java, ser un lenguaje orientado a objetos y ser una herramienta multiplataforma gracias a la maquina virtual propia de Java

    ResponderEliminar