aplicaciones moviles

Post on 18-Nov-2014

3.665 views 3 download

description

Software

Transcript of aplicaciones moviles

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