aplicaciones moviles

60
Software para el desarrollo de aplicaciones móviles Rubén Darío Sánchez [email protected]

description

Software

Transcript of aplicaciones moviles

Page 1: aplicaciones moviles

Software para el desarrollo de aplicaciones móviles

Rubén Darío Sá[email protected]

Page 2: aplicaciones moviles

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

Page 3: aplicaciones moviles

�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

Page 4: aplicaciones moviles

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

Page 5: aplicaciones moviles

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

Page 6: aplicaciones moviles

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

Page 7: aplicaciones moviles

.NET Compact Framework /MMIT

Software para el desarrollo de aplicaciones móviles

.NET Compact Framework.

Page 8: aplicaciones moviles

.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.

Page 9: aplicaciones moviles

.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.

Page 10: aplicaciones moviles

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

Page 11: aplicaciones moviles

�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

Page 12: aplicaciones moviles

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

Page 13: aplicaciones moviles

�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

Page 14: aplicaciones moviles

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

Page 15: aplicaciones moviles

Imágenes – Microsoft Smart Device reviewers guide

.NET Compact Framework/MMIT

Software para el desarrollo de aplicaciones móviles

Page 16: aplicaciones moviles

http://samples.gotdotnet.com/quickstart/CompactFramework

.NET Compact Framework/MMIT

Software para el desarrollo de aplicaciones móviles

Page 17: aplicaciones moviles

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

Page 18: aplicaciones moviles

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

Page 19: aplicaciones moviles

Funcionamiento

Software para el desarrollo de aplicaciones móviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Page 20: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Software para el desarrollo de aplicaciones móviles

Page 21: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Software para el desarrollo de aplicaciones móviles

Page 22: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Software para el desarrollo de aplicaciones móviles

Page 23: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Software para el desarrollo de aplicaciones móviles

Page 24: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6Software para el desarrollo de aplicaciones móviles

Page 25: aplicaciones moviles

MMIT

http://www.asp.net/mobile/flasharchitecture.aspx?tabindex=6

Software para el desarrollo de aplicaciones móviles

Page 26: aplicaciones moviles

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

Page 27: aplicaciones moviles

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

Page 28: aplicaciones moviles

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

Page 29: aplicaciones moviles

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

Page 30: aplicaciones moviles

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

Page 31: aplicaciones moviles

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

Page 32: aplicaciones moviles

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

Page 33: aplicaciones moviles

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

Page 34: aplicaciones moviles

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

Page 35: aplicaciones moviles

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

Page 36: aplicaciones moviles

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

Page 37: aplicaciones moviles

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

Page 38: aplicaciones moviles

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

Page 39: aplicaciones moviles

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

Page 40: aplicaciones moviles

J2ME – CONFIGURACIONES

CLDC: Conected Limited Deviceconfiguration

CDC: Conected Device Configuration

Software para el desarrollo de aplicaciones móviles

J2ME

Page 41: aplicaciones moviles

J2ME – ARQUITECTURA

Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf

Software para el desarrollo de aplicaciones móviles

J2ME

Page 42: aplicaciones moviles

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

Page 43: aplicaciones moviles

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

Page 44: aplicaciones moviles

J2ME – ARQUITECTURA

Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf

Software para el desarrollo de aplicaciones móviles

J2ME

Page 45: aplicaciones moviles

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

Page 46: aplicaciones moviles

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

Page 47: aplicaciones moviles

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

Page 48: aplicaciones moviles

J2ME – ARQUITECTURA

Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf

Software para el desarrollo de aplicaciones móviles

J2ME

Page 49: aplicaciones moviles

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

Page 50: aplicaciones moviles

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

Page 51: aplicaciones moviles

J2ME – ARQUITECTURA

Imagen tomada de http://java.sun.com/j2me/docs/j2me-ds.pdf

Software para el desarrollo de aplicaciones móviles

J2ME

Page 52: aplicaciones moviles

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

Page 53: aplicaciones moviles

Replicación – Bases de datos

Software para el desarrollo de aplicaciones móviles

Page 54: aplicaciones moviles

Software para el desarrollo de aplicaciones móviles

Replicación – Bases de datos

Page 55: aplicaciones moviles

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

Page 56: aplicaciones moviles

�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

Page 57: aplicaciones moviles

�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

Page 58: aplicaciones moviles

�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

Page 59: aplicaciones moviles

BREW

Software para el desarrollo de aplicaciones móviles

Page 60: aplicaciones moviles

CONCLUSIONES

CONCLUSIONES

[email protected]@systecnologias.com