15
COMO DESARROLLAR APLICACIONES MOVILES? Roberto Alvarado Taborda Microsoft Most Valuable Professional en Visual C# Director Comunidad de desarrolladores Bdotnet @RAlvaradoT

Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

Embed Size (px)

DESCRIPTION

En esta conferencia abordo los temas desde que debemos aceptar al cliente, como que arquitectura, pensar en el tipo de aplicacion y en las posibles herramientas a utilizer, en nuestro conocimiento.

Citation preview

Page 1: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

COMO DESARROLLAR APLICACIONES MOVILES?Roberto Alvarado Taborda

Microsoft Most Valuable Professional en Visual C#

Director Comunidad de desarrolladores Bdotnet

@RAlvaradoT

Page 2: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

@RALVARADOT@B_DOTNET

Page 3: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

MIS REFLEXIONES SOBRE EL TEMA DE ACUERDO A MI EXPERIENCIA

Page 4: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

COMO INICIAR A PLANEAR EL DESARROLLO ?

Es una pagina web movil? Es un App para smart phone? Que plataformas va a cubrir?

Con cual plataforma iniciamos o salimos al aire la version 1.0?

Como es nuestro conocimiento de la plataforma escogida? Nuestro equipo de desarrollo conoce la plataforma, las

herramientas de desarrollo, la arquitectura de la plataforma? Va a ser multiplataforma el desarrollo?

Page 5: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

COMO INICIAR A PLANEAR EL DESARROLLO ?

Es una pagina web movil! La hospedamos (hosting) en nuestro servidor? La hospedamos en la Nube? Cual? (Amazon, Oracle, Azure,

otra?) Tiene interaccion con nuestra base de datos central? Si: como alimentamos los datos? Servicios web, de que tipo? WCF, JSON, SOAP Nuestro aplicativo web es compatible con mobile web? Es un Nuevo desarrollo: pagina web movil.

Page 6: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

COMO PLANEAMOS LA ARQUITECTURA DEL APP?

Sobre que tecnologia desarrollamos nuestra web movil?

Nuestra plataforma de desarrollo de aplicaciones web (Java, PHP, ASP.NET, ASP.NET MVC) provee Soporte para web movil?

Si No, que usamos? Web Responsive? Cuales framework?

Responsive Grid System

Titan Framework

Foundation 3

Bootstrap

HTML5 Boilerplate

Page 7: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

CONTINUAMOS LA PLANEACION DEL DESARROLLO DE LA APLICACION MOVIL

Es una aplicacion nativa en el SmartPhone Eligimos una plataforma (iOS, Android, WinPhone) Nuestra Aplicacion es multiplataforma? Tenemos el conocimiento para el desarrollo? 1 equipo de desarrollo para Android, 1 para iOS, 1

para Windows Phone. Aprenderemos nuevos lenguajes de programacion? Hay que aprender y entender cada plataforma

desde el punto de vista de desarrollo.

Page 8: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

DESARROLLO NATIVO O HIBRIDO?

Podemos crear Apps con HTML5, CSS3 y JavaScript

Apps nativas con Swift/Objetive C para iOS Apps nativas con Java para Android Apps nativas con XAML y C# para Windows Phone

Page 9: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

DESARROLLO HIBRIDO

Multiplataforma

Usando HTML5, CSS3 y JavaScript, framework javascript como Kendo UI, Jquery Mobile

Phone Gap

Icenium

Appcelerator

DevExtreme Mobile (DevExpress)

MoSync

RhoMobile (Motorola Solutions)

Sencha

Page 10: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

PUNTOS A FAVOR Y EN CONTRA

Facil aprendizaje para los Web Developers Reutilizacion alta del código escrito HTML Cambios en el CSS3 para las diferentes plataformas

(iOS, Android, Windows Phone) Dificultad al momento de acceder al hardware (existen

framework javascript, pero no es standard para todas las plataformas)

El performance del App no es tan Bueno, pues siempre estan en una envoltura de la plataforma y luego tienen un control web browser que ejecta el html local

Page 11: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

DESARROLLO NATIVO

Acceso total al hardware del dispositivo Diferentes plataformas de desarrollo (iOS, Android,

Windows Phone) Diferentes Lenguajes de programacion: Swiff / Objetive C para iOS Java para Android C# para Windows Phone

Page 12: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

QUE OPCIONES TENGO?

1 Equipo de desarrollo para Android con Java? 1 Equipo de desarrollo para iPhone con Objective C /

Swift? 1 Equipo de desarrollo para Windows Phone con C#

y XAML? Alguna opcion que me permita reutilizar

código?

Page 13: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

DESARROLLO 1 VEZ Y REUTILIZO LA MAYOR PARTE DEL CÓDIGO 70%+

Utilizar herramientas llamadas de Cross Platform que me permitan utilizer 1 solo lenguaje de progracion, que me permitan acceder al hardware del dispositivo y reutilizer el código al maximo. Por lo menos un 75% del código.

A tener en cuenta que una de las cosas que mas cambia es la manera en que cada plataforma maneja la UI. iOS utiliza Views y el patron MVC, Android utiliza XML y Windows Phone utiliza XAML.

Page 14: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

OPCIONES CROSS-PLATFORM NATIVAS

Corona de Corona Labs Runrev Live Code Xamarin 3.0

Page 15: Como desarrollar aplicaciones moviles, que debemos tener en cuenta?

GRACIAS !!!

http://vbcodigopocketpc.blogspot.com http://bdotnet.org

@RAlvaradoT @B_DotNet