Post on 13-Oct-2018
Software para el desarrollo de aplicaciones móviles
Rubén Darío Sánchezrusanche@escuelaing.edu.co
Programa
�Introducción.�NET Compact Framework / MMIT.�WebServices / Servicios WEB.�J2ME.�Replicación – Bases de datos.�Brew.�Conclusiones.
Software para el desarrollo de aplicaciones móviles
�Las soluciones móviles e inalámbricas son una opción diferente de conectividad.
�Permite dar un valor agregado a las operaciones empresariales.
�EXTIENDE el modelo de negocio actual de las empresas para permitir la automatización.
Introducción
Software para el desarrollo de aplicaciones móviles
Móvil & Inalámbrica�Móvil: Permite portar aplicaciones y
soluciones - no sincronización de datos en tiempo real.
�Inalámbrica: Permite la transmisión de información en tiempo real, así como acceder a aplicaciones remotas (ASP).
Software para el desarrollo de aplicaciones móviles
Introducción
Cambios en la computación Móvil
�90’s Aplicaciones CRM.�Handheld se transforma en PDA.�Evolución rápida de aplicaciones para
compatibilidad con últimas tecnologías gracias a los patrones de diseño, la ingeniería de software y procesos.
Software para el desarrollo de aplicaciones móviles
Introducción
Impacto de las soluciones móviles a nivel de infraestructura y capas
�Aplicación: Muchos de los esfuerzos para la adopción de APMI se enfocan en la manera en que se soluciona el problema del negocio. La escogencia de una infraestructura móvil no tiene porque afectar el problema sino la manera en que éste se aborda.
• The CIO Wireless Resource Book, Synchrologic, www. synchrologic.com
Introducción
Software para el desarrollo de aplicaciones móviles
.NET Compact Framework /MMIT
Software para el desarrollo de aplicaciones móviles
.NET Compact Framework.
.NET Compact Framework
Software para el desarrollo de aplicaciones móviles
.NET CF�Iniciativa Microsoft para desarrollo de
aplicaciones para dispositivos Inteligentes (Móviles).
�Es un subconjunto de .NET para desktop.
�Permite reutilizar conocimientos y experiencia de desarrollo sin necesidad de aprender nuevos lenguajes.
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
�Reduce costos e incrementa la eficiencia.
�Soporte el desarrollo con Visual Basic .NET and C#.
�Desarrollo y Debug con Visual Studio .NET.
SistemaSistema operativooperativo de Hostde Host
CapaCapa de de adaptaciadaptacióónn a a plataformaplataforma
Motor de Motor de EjecuciEjecucióónn (MSCOREE.DLL)(MSCOREE.DLL)
LibrerLibrerííasas de de ClaseClase parapara plataformaplataforma especespecííficafica
LibrerLibrerííasas BBáásicassicas
AplicacionesAplicaciones
.NET Compact Framework.NET Compact Framework
ManejadaManejadaNativaNativa
.NET Compact Framework/MMIT
�Windows Forms�Conectividad.
� Networking, HTTP classes, XML Web services
�Acceso a datos.� ADO.NET, SQL Server CE, SQL Server
�XML.� XmlDocument, XmlReader/Writer
�Clases básicas comunes.� IO, collections, reflection, math, drawing.
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
El subconjunto de clases es de aproximadamente el 25% de lo encontrado en el .NET compact Framework.
Adiciones dependiendo de dispositivo�Soporte IrDA.�Clases para manejo de SQL Server.�Controles específicos para dispositivo.
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
�Tamaño del Framework� 1.35MB (ROM)
Windows CE .NET �Necesita aproximadamente 1Mb
más lo necesitado por la aplicación.�El tamaño de las aplicaciones es de
5 a 500k aproximadamente Gracias a las características del framework.
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
XML
�XmlTextReader y XmlTextWriter� Parseo de datos XML hacia adelante
únicamente.�XmlDocument�No soportados:
� XPath, XSL/T
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
Imágenes – Microsoft Smart Device reviewers guide
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
http://samples.gotdotnet.com/quickstart/CompactFramework
.NET Compact Framework/MMIT
Software para el desarrollo de aplicaciones móviles
Microsoft Mobile Internet Toolkit
Se origina debido a:�Tamaños�Resoluciones�Servicios que prestan�Velocidades de conexión�Lenguajes de navegación que soportan�Sistemas operativos
Software para el desarrollo de aplicaciones móviles
.NET Compact Framework/MMIT
Características
�Controles de formas Web para dispositivos móviles
�IDE “Interface Developer Enviroment”
�Capacidades de navegación en Internet mediante ASP.NET
Software para el desarrollo de aplicaciones móviles
MMIT
Funcionamiento
Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6Software para el desarrollo de aplicaciones móviles
MMIT
http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6
Software para el desarrollo de aplicaciones móviles
Características�El MMIT, para poder desplegar el
lenguaje adecuado, almacena los Tags en formato XML y después de identificar el tipo de dispositivo en tiempo de ejecución, despliega la página, utilizando el lenguaje correspondiente.
MMIT
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICESCaracterísticas de una solución remota en la red:�Interoperabilidad�Amigabilidad con Internet�Tipos de datos no ambiguos�Aprovechar estándares de Internet�Soporte para diferentes lenguajes�Soporte para estructura de componentes distribuidas
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICES
DescubrimientoUDDI,DISCO
DescripciónWSDL,XML Schema, Docs
CodificaciónXML
Formato del mensajeSOAP
TransporteHTTP,SMTP …..
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICES
�Descubrimiento:�Descripción:
�Permite resolver la ubicación de un servicio remoto.�Permite dar información sobre los datos al cliente
�Formato del mensaje:�Para evitar traducir cabeceras de los protocolos como HTML y SMTP se utiliza.� SOAP permite asociar información de cabecera con el cuerpo del mensaje
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICES
�Codificación:�Esquema de codificación que utiliza texto con caracteres estándar. Ej.. Little Indian y Big Indian
�Transporte:�Se pretende utilizar protocolos aprobados, estandarizados y de alta utilización por eso se apoda HTML y SMTP
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICESMétodo tradicional
public bool Validate( DateTime expDate){
Bool valor=false;if(expDate >= DateTime.Today)
valor=true;return valor;
}
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICESWebservice
[webMethod]public bool Validate( DateTime expDate){
Bool valor=false;if(expDate >= DateTime.Today)
valor=false;return valor;
}
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
XML WEBSERVICES
Instancia:localhost.CreditCard cc = new localhost.CreditCard();
Llamado a la función:if(cc.Validate(TextBox1.Text, Calendar1.SelectedDate)) {
Status.Text = ”Tarjeta correcta."; }
else {
Status.Text = ”Tarjeta invalida."; }
WEBSERVICES
Software para el desarrollo de aplicaciones móviles
J2MECreado para teléfonos móviles, PDAs, TV set-top boxes, sistemas telemáticos para vehículos entre otros.
La plataforma es un conjunto de APIsjava definidos por el proceso java community
J2ME
Software para el desarrollo de aplicaciones móviles
J2ME
Permite llevar las características de java a pequeños dispositivos.Incluye características de interfaz, seguridad, compatibilidad con múltiples protocolos
J2ME
Software para el desarrollo de aplicaciones móviles
J2ME – ARQUITECTURALa arquitectura J2me define perfiles, configuraciones, y paquetes adicionales que permiten crear ambientes java que cumplen con los requerimientos de los dispositivos
J2ME
Software para el desarrollo de aplicaciones móviles
J2ME – ARQUITECTURAPara cada desarrollo se tienen en cuenta optimización de memoria , capacidad de procesamiento, capacidad de entrada y salida dependiendo de la categoría del dispositivo.
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – ARQUITECTURA
Se pretende tener en cuenta todos los dispositivos para ofrecer la mejor experiencia para el usuario
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – CONFIGURACIONES
Las configuraciones son un conjunto mínimo de librerías y una máquina virtual. Proveen la funcionalidad Java para cierto rango de dispositivos que comparten características similares.
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – CONFIGURACIONES
CLDC: Conected Limited Deviceconfiguration
CDC: Conected Device Configuration
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – ARQUITECTURA
Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – CONFIGURACIONESCLDC: �Diseñada para dispositivos con conexiones intermitentes a Internet, procesadores lentos, y memoria restringida.�Tel Celulares, Pagers y PDAs�CPU 16 y 32 Bits – 128Kb a 512 Kb
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – CONFIGURACIONESCDC: •Diseñada para dispositivos con más memoria, procesadores rápidos y con posibilidad para mayores anchos de banda.•Sistemas telemáticos para vehículos, TV Set-Top Boxes y PDAs.•Memoria de mínimo 2 Mb –CPU de 32 bits
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – ARQUITECTURA
Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – PROFILES -PERFILES
�Son creados para poder prestar un ambiente específico completo en tiempo de ejecución dependiendo del dispositivo�Estos definen el ciclo de vida de las aplicaciones, interfaz de usuario y acceso a propiedades especificas del dispositivo
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – PROFILES -PERFILESMobile Information Device Profile:
•Diseñado para teléfonos móviles y PDAsde baja capacidad.•Provee aplicaciones de conectividad, almacenamiento, Interfaz•Es combinado con el CDLC
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – PROFILES -PERFILESFundation Profile (FP):
�Los perfiles para CDC pueden ser aplicados en capas para añadir mas funcionalidad de aplicación a los dispositivos cuando sea necesarioEs el nivel más bajo del CDC, provee una implementación para red sin interfaz de usuario
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – ARQUITECTURA
Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – PROFILES -PERFILESPersonal Profile (PP):�Es el perfil de CDC para dispositivos que requieren un GUI completo o soporte para applets.�Consolas, PDAs avanzadas, dispositivos de comunicación avanzados.�Incluye un AWT (Abstract window Toolkit).�Es el reemplazo de personal java para ajustarse a la plataforma J2ME.
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – PROFILES -PERFILESPersonal Basis Profile (PBP):
�Es un subconjunto del PP :provee un ambiente de aplicación para dispositivos con un nivel básico de presentación gráfica.�Sistemas telemáticos para vehículos, kioscos de información, TV Set-Top Boxes.�Se encuentra sobre el CDC.
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – ARQUITECTURA
Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf
Software para el desarrollo de aplicaciones móviles
J2ME
J2ME – OPCIONALESPaquetes opcionales:
�Para requerimientos específicos, como bluetooth, webservices, multimedia, conexión a bases de datos etc.�Son modulares lo que permite adicionar nuevos paquetes según la necesidad.
Software para el desarrollo de aplicaciones móviles
J2ME
Replicación – Bases de datos
Software para el desarrollo de aplicaciones móviles
Software para el desarrollo de aplicaciones móviles
Replicación – Bases de datos
BREW�QUALCOMM�Pionera y lider mundial en tecnologíainalámbrica digital de acceso multiple pordivisión de código (CDMA) .�Fuerte en EU y Asia.�Débil en Europa por GSM
Software para el desarrollo de aplicaciones móviles
BREW
�Es una solución que proporciona las herramientas necesarias y los servicios a los desarrolladores, a los fabricantes del dispositivo y a los operadores para el desarrollo ,la distribución y configuración del dispositivo móvil.
BREW
Software para el desarrollo de aplicaciones móviles
�El lenguaje nativo de BREW C/C++ pero a la vez permite el desarrollo de aplicaciones Java y XML
�La arquitectura de BREW es fácil de escribir y entendible para terceros.
BREW
Software para el desarrollo de aplicaciones móviles
�El entorno de ejecución de BREW es un capa de interfaz que reside en un dispositivo móvil entre el ASIC (Application Specific IntegratedCircuit) y las aplicaciones, permitiendo a los usuarios finales bajar y ejecutar programas en dispositivos BREW-enabled.
BREW
Software para el desarrollo de aplicaciones móviles
BREW
Software para el desarrollo de aplicaciones móviles
CONCLUSIONES
CONCLUSIONES
rusanche@escuelaing.edu.corsanchez@systecnologias.com