Post on 29-Nov-2014
description
transcript
COMO DESARROLLAR APLICACIONES MOVILES?Roberto Alvarado Taborda
Microsoft Most Valuable Professional en Visual C#
Director Comunidad de desarrolladores Bdotnet
@RAlvaradoT
@RALVARADOT@B_DOTNET
MIS REFLEXIONES SOBRE EL TEMA DE ACUERDO A MI EXPERIENCIA
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?
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.
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
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.
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
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
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
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
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?
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.
OPCIONES CROSS-PLATFORM NATIVAS
Corona de Corona Labs Runrev Live Code Xamarin 3.0
GRACIAS !!!
http://vbcodigopocketpc.blogspot.com http://bdotnet.org
@RAlvaradoT @B_DotNet