Introduccion a Xamarin

Post on 15-Apr-2017

794 views 6 download

Transcript of Introduccion a Xamarin

#XamarinDevDays

Introducción a Xamarin

¿Quien es este chico?

MVP Windows Development Xamarin Regional Lead

luciomsp@geeks.mshttp://vicenteguzman.mx@LucioMSP

Vicente G. Guzmán Lucio[ Maestro | Ingeniero | Licenciado | Geek ]

Más Plataformas == Más usuarios

¿Cuáles son las mejores plataformas para llegar a la gente?

Android: 52%iOS: 42%WinPhone: 3%Blackberry: 2%Otras: 1%

¿Cuál es el principal problema para los desarrolladores?

Enfoque del desarrollo móvil

Desarrollo móvil - Enfoque clásico

iOS WindowsAndroid

Objective-CXcode

C#Visual Studio

JavaAndroid Studio

Nativo: desarrollando 3 Apps “iguales”

• Varios equipos especializados• Mucho codigo repetido• Diferentes herramientas• …….

Enfoque: “escribe una vez” para todo…

HTML5 + CSS3 + JavaScript

• Mínimo Denominador Común• Fragmentación por navegador• Rendimiento NO nativo

Desarrollas y diseñas una única vez, pero…- ¿Experiencia de usuario?- ¿Calidad del código?

Desarrollo Móvil

{ Ayer } { Hoy }

Roma no se construyo en un día…

2000 2001 2003 2009 2011 2012 2013 2014 2015…

Se funda Ximian

ComienzaMono

Ximian esadquiridapor Novell

Se lanza el primer producto

iOS

ConocidoComo

MonoTouch

Se fundaXamarin

PrimerRelease

de XamarinAndroid

PrimerRelease

de XamarinAndroid

LaunchPartnerProgram

Xamarin 2.0

Evolve 2013

XamarinTest

Cloud

MicrosoftPartnership

Xamarin 3

Xamarin.Forms

Evolve 2014

XamarinAndroid

Emulator

Enfoques Xamarin: ¿Qué opciones tenemos?

Enfoque Xamarin (Clásico)

• La UI es específica de cada plataforma.

• La lógica de la Aplicación es en C# y compartida mediante el uso de PCLs o Shared Projects.

• Código compartido: 80% aprox.

Enfoque Xamarin.Forms

Mas código compartido (controles nativos)

Shared UI Code

¿Cómo es posible?

Xamarin.Android usa la compilación Just In Time (JIT).

Xamarin.iOS realiza una compilación Ahead Of Time (AOT) para crear un binario ARM para la App Store.

APIs Android

100% deConvergencia

¿APIs nativas?

APIs iOS

100% de Convergencia

¿APIs nativas?

APIs Windows

¿APIs nativas?

Es decir, cualquier cosa que puedas hacer en Objective-C, Swift o Java se pueden hacer en C# con Xamarin.

¿Por qué Xamarin?

Xamarin – Una completa solución móvil

Diseño Desarrollo Integración

Aprendizaje

Plataforma Xamarin

Pruebas Monitoreo

Visual Studio

Xamarin Studio – Mac

Xamarin.Forms

Xamarin.Forms

• Permite crear facilmente y con rapidez interfaces de usuario nativas compartidas

• Los elementos de Xamarin.Forms son mapeados a elementos nativos y behaviors propios de cada plataforma

• Podemos mezclar Xamarin.Forms con APIs nativas

+40 Páginas

Content MasterDetail Navigation Tabbed Carousel

7 Layouts

Stack Absolute Relative Grid ContentView ScrollView Frame

24 Controles

ActivityIndicator BoxView Button DatePicker Editor

Entry Image Label ListView Map

OpenGLView Picker ProgressBar SearchBar Slider

Stepper TableView TimePicker WebView EntryCell

ImageCell SwitchCell TextCell ViewCell

Ejemplo de Xamarin.Forms

En tiempo de ejecución, las páginas y controles de Xamarin.Forms son convertidos a elementos nativos de interface de Usuario de cada plataforma.

Desarrollemos una App

Siempre al día…

Asistencia en el mismo día:iOS 5, iOS 6, iOS 7, iOS 7.1, iOS 8

Soporte completo para:

Google Glass Android Wear Amazon Fire TV Apple Watch Más!

Diversificación: Android

Diversificación: iOS3D Touch iPhone 6s series only

Apple penciliPad Pro only

Multi TaskingOnly select iPads

iPads

iPod touchiPhones

Factores de Form Caracteristicas iOS 9

Resumen• Xamarin permite crear aplicaciones nativas en iOS, Android, Mac y Windows

mediante .NET y aprovechando toda la potencia de C#.• Las aplicaciones implementadas mediante Xamarin tienen un Look&Feel nativo por

que son nativas. Ofrece un 100% de cobertura en las APIs de desarrollo de cada plataforma, estando siempre al día en cuanto a actualizaciones se refiere.

• Posibilidad de desarrollar en Mac o Windows mediante Xamarin Studio, o instalando Visual Studio.

• Mejora los tiempos de desarrollo y los costes mediante la compartición de una gran cantidad de código.

• Prueba de forma automática tu App en miles de dispositivos reales mediante Xamarin Test Cloud.

• Obtenemos información de los dispositivos de los usuarios mediante Xamarin Insights.

Unrivaled Mobile

Development Training

Live unlimited mobile development training from mobile experts, in your time-zone, on your schedule, and as often as you'd like.

Free 30 Day Trial - xamarin.com/university

¡Regalos……regalos!• Métodos de compilación que realiza Xamarin para Android y iOS

• ¿De cuantos Layouts dispone Xamarin.Forms?

• ¿En que año se fundo Xamarin?

Gracias! Preguntas?

Vicente Guzman Xamarin Regional LeadMVP Windows Development

luciomsp@geeks.msvicenteguzman.mx@LucioMSP