Desarrollo de Aplicaciones

El ciclo de desarrollo de aplicaciones usando MyMobileWeb se describe en la figura de abajo. Para cada caso de uso (también llamado “Operación de Presentación” en la terminología de MyMobileWeb) el desarrollador proporciona un conjunto de páginas (tambien llamadas vistas o presentaciones) que especifican el interfaz de usuario para el caso de uso en cuestion. Estas paginas son ficheros XML que definen,declarativamente y de manera independiente del dispositivo el interfaz de usuario. Estos ficheros XML se componen por los contenedores y componentes visuales móviles abstractos. Cada presentación se renderizara de manera diferente dependiendo del contexto de entrega o las reglas proporcionadas por el programador. El diseño y el look and feel de los componentes visuales se especifica utilizando W-CSS además de extensiones especificas. Los recursos, por lo general imágenes, se declaran por medio de identificadores de recurso.

Una vez que el desarrollador ha definido los casos de uso de la aplicacion, los paginas XML y el look and fell, se ha de ejecutar una herramienta automática de generación de código que procesa el XML y las hojas de estilo para generar:

  • Paginas JSP, que presentarán el interfaz de usuario especificado en el XML.
  • Descriptores de validación que se utilizaran para realizar las validaciones automaticas en el lado del servidor.
  • Un conjunto de funciones javascript que seran las encargadas de realizar las validaciones locales para los dispositivos con capacidad de scripting en el lado cliente.

En tiempo de ejecución, estas paginas JSP, en colaboración con un conjunto de librerias y componentes, se encargarán del renderizado de la presentación de acuerdo con los diferentes contextos de entrega. Esta arquitectura, basada en la pregeneración de paginas, proporciona el mejor rendimiento, al no exisitir ejecución de XSLT o similar en el lado del servidor. Como se puede observar en la figura, no se genera una página JSP para cada dispositivo, sólo se generan los JSPs necesarios, por lo general uno para cada tecnología de marcado. Si hay redefiniciones de la presentación, o de los estilos, entonces se generan más paginas JSP para satisfacer estos requisitos.

Ademas, los desarrolladores tienen que especificar:

  • Los gestores de eventos (clases Java) para el tratamiento de los eventos desencadenados por cada control visual.
  • Las operaciones de Aplicación (OAs) (clases Java) que se encargarán, cuando sea necesario, de obtener nuevos datos o realizar operaciones de la lógica de negocio (en colaboración con los servicios).
  • Los recursos de la aplicación, generalmente imágenes pequeñas que decoran el interfaz de usuario. Los desarrolladores pueden proporcionar múltiples variantes de un mismo recurso y MyMobileWeb seleccionará la mejor instancia para cada contexto de entrega. Para escenarios más complejos MyMobileWeb proporciona un componente de transcodificación capaz de adaptar los recursos dinámicamente.

Uno de los enfoques más innovadores de MyMobileWeb en comparación con otros frameworks es la tecnología de binding de datos y contenidos. El binding es una técnica que permite la asociación declarativa de datos o contenidos a controles visuales. Por ejemplo, si el desarrollador especifica que una pantalla pequeña debe tener una tabla, al mismo tiempo esta declarando cual va a ser el origen de los datos (almacenado en el modelo) desde el cual la tabla en cuestión va a recuperar los datos. En tiempo de ejecución MyMobileWeb se encargará de recuperar los datos y colocarlos en la tabla, paginandola si fuera necesario.

Tags: none