SlideShare une entreprise Scribd logo
1  sur  18
Xamarin
PUERTA ABIERTA A LA MULTIPLATAFORMA
Sergio Gasca
@SergioZgz
¿Qué es Xamarin?
• Implementacion libre de .Net
• Android
• Android < Mono < IL < CLR < C#
• iOS
• iOS < AOT < C#
• Linux
• Permite el uso del 100% de las APIs nativas, ya que son expuestas
desde Xamarin (Xamarin.iOS / Xamarin.Android) para ser
referenciadas desde c#
• Desarrollo NATIVO
Trayectoria
¿Qué aporta Xamarin?
• Reutilización de código.
• Minimizar tests.
• Reducir mantenimiento.
• Facilitar refactors.
• Todo lo anterior se aplica en mayor o menor medida en función del
“tipo” de desarrollo
• S.O.L.I.D. es tu amigo
• Para “exprimir” Xamarin es necesario pensar antes de actuar.
¿Cuándo usar Xamarin?
• No es una navaja suiza
• Aplicaciones en las que gran parte de la lógica sea agnóstica de la
plataforma (Hardware, Apis nativas, etc.) o que el uso de las mismas
pueda abstraerse mediante interfaces
• No tiene sentido en aplicaciones que solo usen cosas nativas, por
ejemplo una aplicación que aplique efectos a la cámara en tiempo
real. En este caso solo aportaría usar C# (Lo cual a un desarrollador de
plataforma le traerá mas problemas que beneficios)
• Quieres focalizar a cada desarrollador en su área, y tienes
desarrolladores .Net que pueden trabajar en la parte común de
ambas plataformas
¿Cuándo utilizar Xamarin?
• Resumiendo… cuando la relación código plataforma vs código
compartido salga a cuenta. (Esta relación tiene trampa )
Adaptarse a Xamarin (General)
• Sencillo, pero con puntualizaciones:
• Hay que cambiar la forma de trabajar, delegar gran parte del trabajo en otros.
• Hay que coordinar el trabajo.
• Vas a echar de menos tu IDE favorito.
• Bugs sin sentido (Cada X días encontraras uno sin sentido aparente)
• Recuerda estás en .Net usa su poder (Linq le termina encantando a
todo el mundo)
Adaptarse a Xamarin (Android)
• El editor visual no es lo que esperas (Ha mejorado bastante en el
último ciclo)
• En VisualStudio con muchos layouts cambiar o añadir uno se vuelve
desesperante (En teoría en el último ciclo esta solucionado)
• Olvida las constantes, bienvenidos los enums
• Hazte amigo de las interfaces pero …
• TIP: Si al implementar una interfaz te pide que implementes
un intptr, te has olvidado de heredar de Java.Lang.Object
Adaptarse a Xamarin (iOS)
• El editor visual de storyboards no es lo que esperas.*
• Vas a seguir usando Xcode para ciertas cosas
• Muchos tutoriales se empeñan en hacer los layouts por código y no
por storyboard
• La gestión de assets da bastantes problemas (Parece haberse
solucionado en el último ciclo)
• Desplegar en dispositivo lleva bastante mas tiempo que lo que estáis
acostumbrados
Forms vs No Forms
• Forms, opinión personal, no esta maduro. Aun asi lo usaría en estos
puntos:
• Una prueba de concepto
• Apps en la que el diseño no sea importante y el tiempo de desarrollo sea
mínimo
• Apps en la que el rendimiento no sea importante, ya que es bastante peor
que en Xamarin Classic.
• Apps que no requieran gran uso de funcionalidad nativa.
Xamarin en el mundo real
• Xamarin es multiplataforma pero no es HTML Hibrido.
• No esta pensado para hacer iOS y Android con el mismo estilo visual y misma
navegación.
• Requiere una arquitectura mas compleja que un desarrollo “normal” en cada
plataforma.
• Focalizamos esfuerzos por área de experiencia
• Arquitectura pensando en las plataformas (Y a poder ser en MvvmCross).
• Mas respeto a S.O.L.I.D. mas fácil será tu vida.
• Es necesario alguien que coordine el trabajo entre los tipos de
desarrolladores.*
Xamarin en el mundo real
• Cualquier aplicación que pase de ser una PoC debería pensarse
seriamente en hacerse con MvvmCross.
• Necesario formación en el patrón Mvvm.
• Necesario formación en el framework MvvmCross.
• Cambiar la forma de pensar como hacer las cosas.
• Sí, la próxima charla será sobre Xamarin con MvvmCross
Xamarin en el mundo real “Lo malo”
• Bugs, Acostúmbrate a hacer Clean&Rebuild (AAPT…)
• Problemas por desconocimiento.
• Complicado conseguir perfiles.
• HttpClient (HttpClientHandler nativo)
• Portable Class Libraries (PCLs)
• Agnósticas de plataforma
• Complejo al principio
• Los nuevos “mas buscados”. Lo cual puede ser bueno y malo.
Xamarin en el mundo real “Lo peor”
• 1 desarrollador != 3 plataformas
• Multiplataforma != 1/3 tiempo desarrollo.
• No vais a compartir un 90% del codigo. Todo lo que sea visual
(Animaciones, diseños, etc.) ha de hacerse en cada plataforma.
• Bindings
Herramientas (IDEs)
• Windows
• VisualStudio,
• Da algunos problemas de rendimiento en Android con muchos layouts.
• Para trabajar con iOS es necesario tener un agente de compilación en un Mac
• Permite trabajar con ReSharper   
• XamarinStudio
• Va ligeramente por detrás de XamarinStudio Mac. (Ej C#6.0)
• Mac
• XamarinStudio
• Pequeños problemas con assets desde carpeta
• Lentitud al desplegar en dispositivo
• Problemas con los StoryBoards (sobre todo con las Constrain)
• Necesario tener Xcode instalado en misma versión que XamarinStudio
Herramientas (Emuladores)
• Windows
• Xamarin Android Player (Cancelado)
• Emuladores x86 Xamarin Studio
• VisualStudio Android Emulators
• Habilitar Hyper-V
• Mac
• Emuladores propios de Xcode.
• TIP: Xamarin Profiler
Prueba de código
Muchas gracias por asistir
Sergio Gasca
@SergioZgz
¿Preguntas?

Contenu connexe

Tendances

PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinJavier Suárez Ruiz
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appBorja García Cueto
 
Conociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinConociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinJavier Suárez Ruiz
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinJavier Suárez Ruiz
 
Codemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinCodemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinJavier Suárez Ruiz
 
Integración Continua con Apps Xamarin
Integración Continua con Apps XamarinIntegración Continua con Apps Xamarin
Integración Continua con Apps XamarinJavier Suárez Ruiz
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinJavier Suárez Ruiz
 
Xamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinXamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinJavier Suárez Ruiz
 
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinCrear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinJavier Suárez Ruiz
 
Visual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaVisual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaJavier Suárez Ruiz
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinJavier Suárez Ruiz
 
Universal Windows Platform Bridges
Universal Windows Platform BridgesUniversal Windows Platform Bridges
Universal Windows Platform BridgesJavier Suárez Ruiz
 
Xamarin Dev Days Madrid - Taller Xamarin
Xamarin Dev Days Madrid - Taller XamarinXamarin Dev Days Madrid - Taller Xamarin
Xamarin Dev Days Madrid - Taller XamarinJavier Suárez Ruiz
 

Tendances (20)

Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
Introducción a Xamarin.Forms
Introducción a Xamarin.FormsIntroducción a Xamarin.Forms
Introducción a Xamarin.Forms
 
PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a Xamarin
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera app
 
Servicios Xamarin
Servicios XamarinServicios Xamarin
Servicios Xamarin
 
Conociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinConociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema Xamarin
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas Xamarin
 
Xamarin Live Player
Xamarin Live PlayerXamarin Live Player
Xamarin Live Player
 
Codemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinCodemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller Xamarin
 
Integración Continua con Apps Xamarin
Integración Continua con Apps XamarinIntegración Continua con Apps Xamarin
Integración Continua con Apps Xamarin
 
Testing de Apps Xamarin
Testing de Apps XamarinTesting de Apps Xamarin
Testing de Apps Xamarin
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller Xamarin
 
Introducción a xamarin
Introducción a xamarinIntroducción a xamarin
Introducción a xamarin
 
Xamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinXamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a Xamarin
 
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinCrear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
 
Visual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaVisual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event Sevilla
 
Introduccion a Xamarin
Introduccion a XamarinIntroduccion a Xamarin
Introduccion a Xamarin
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
 
Universal Windows Platform Bridges
Universal Windows Platform BridgesUniversal Windows Platform Bridges
Universal Windows Platform Bridges
 
Xamarin Dev Days Madrid - Taller Xamarin
Xamarin Dev Days Madrid - Taller XamarinXamarin Dev Days Madrid - Taller Xamarin
Xamarin Dev Days Madrid - Taller Xamarin
 

Similaire à Xamarin Basics

Experiencia con Xamarin en el mundo real de los proyectos.
Experiencia con Xamarin en el mundo real de los proyectos.Experiencia con Xamarin en el mundo real de los proyectos.
Experiencia con Xamarin en el mundo real de los proyectos.Elbrinner Fernandes
 
Salesforce Lightning Components
Salesforce Lightning ComponentsSalesforce Lightning Components
Salesforce Lightning ComponentsDavid Carnicer
 
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptxCOECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptxLuis Beltran
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Ricard Clau
 
Azure Storage y Xamarin - Tec Tianguistenco
Azure Storage y Xamarin - Tec TianguistencoAzure Storage y Xamarin - Tec Tianguistenco
Azure Storage y Xamarin - Tec Tianguistencoenriqueaguilar
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles RAUL Velez
 
Pegandose con android
Pegandose con androidPegandose con android
Pegandose con androidcampusmilenio
 
Pegándose con Android
Pegándose con AndroidPegándose con Android
Pegándose con Androidcampusmilenio
 
Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Armando Picón Z.
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...Sorey García
 
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...Luis Beltran
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programadorBraulio Diez Botella
 
Desarrollo de apps móviles desde cero
Desarrollo de apps móviles desde ceroDesarrollo de apps móviles desde cero
Desarrollo de apps móviles desde ceroInitsogar
 
Old fox new tricks malicious macros are back
Old fox new tricks malicious macros are backOld fox new tricks malicious macros are back
Old fox new tricks malicious macros are backWebsec México, S.C.
 

Similaire à Xamarin Basics (20)

Presentacion cw2012
Presentacion cw2012Presentacion cw2012
Presentacion cw2012
 
Experiencia con Xamarin en el mundo real de los proyectos.
Experiencia con Xamarin en el mundo real de los proyectos.Experiencia con Xamarin en el mundo real de los proyectos.
Experiencia con Xamarin en el mundo real de los proyectos.
 
Las Herramientas de un Frontend
Las Herramientas de un FrontendLas Herramientas de un Frontend
Las Herramientas de un Frontend
 
Salesforce Lightning Components
Salesforce Lightning ComponentsSalesforce Lightning Components
Salesforce Lightning Components
 
Panel Magmaconf
Panel MagmaconfPanel Magmaconf
Panel Magmaconf
 
dotNetMálaga - Taller Xamarin
dotNetMálaga - Taller XamarindotNetMálaga - Taller Xamarin
dotNetMálaga - Taller Xamarin
 
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptxCOECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2
 
Azure Storage y Xamarin - Tec Tianguistenco
Azure Storage y Xamarin - Tec TianguistencoAzure Storage y Xamarin - Tec Tianguistenco
Azure Storage y Xamarin - Tec Tianguistenco
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles
 
Pegandose con android
Pegandose con androidPegandose con android
Pegandose con android
 
Pegándose con Android
Pegándose con AndroidPegándose con Android
Pegándose con Android
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
 
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programador
 
Desarrollo de apps móviles desde cero
Desarrollo de apps móviles desde ceroDesarrollo de apps móviles desde cero
Desarrollo de apps móviles desde cero
 
Old fox new tricks malicious macros are back
Old fox new tricks malicious macros are backOld fox new tricks malicious macros are back
Old fox new tricks malicious macros are back
 
Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018
 

Xamarin Basics

  • 1. Xamarin PUERTA ABIERTA A LA MULTIPLATAFORMA Sergio Gasca @SergioZgz
  • 2. ¿Qué es Xamarin? • Implementacion libre de .Net • Android • Android < Mono < IL < CLR < C# • iOS • iOS < AOT < C# • Linux • Permite el uso del 100% de las APIs nativas, ya que son expuestas desde Xamarin (Xamarin.iOS / Xamarin.Android) para ser referenciadas desde c# • Desarrollo NATIVO
  • 4. ¿Qué aporta Xamarin? • Reutilización de código. • Minimizar tests. • Reducir mantenimiento. • Facilitar refactors. • Todo lo anterior se aplica en mayor o menor medida en función del “tipo” de desarrollo • S.O.L.I.D. es tu amigo • Para “exprimir” Xamarin es necesario pensar antes de actuar.
  • 5. ¿Cuándo usar Xamarin? • No es una navaja suiza • Aplicaciones en las que gran parte de la lógica sea agnóstica de la plataforma (Hardware, Apis nativas, etc.) o que el uso de las mismas pueda abstraerse mediante interfaces • No tiene sentido en aplicaciones que solo usen cosas nativas, por ejemplo una aplicación que aplique efectos a la cámara en tiempo real. En este caso solo aportaría usar C# (Lo cual a un desarrollador de plataforma le traerá mas problemas que beneficios) • Quieres focalizar a cada desarrollador en su área, y tienes desarrolladores .Net que pueden trabajar en la parte común de ambas plataformas
  • 6. ¿Cuándo utilizar Xamarin? • Resumiendo… cuando la relación código plataforma vs código compartido salga a cuenta. (Esta relación tiene trampa )
  • 7. Adaptarse a Xamarin (General) • Sencillo, pero con puntualizaciones: • Hay que cambiar la forma de trabajar, delegar gran parte del trabajo en otros. • Hay que coordinar el trabajo. • Vas a echar de menos tu IDE favorito. • Bugs sin sentido (Cada X días encontraras uno sin sentido aparente) • Recuerda estás en .Net usa su poder (Linq le termina encantando a todo el mundo)
  • 8. Adaptarse a Xamarin (Android) • El editor visual no es lo que esperas (Ha mejorado bastante en el último ciclo) • En VisualStudio con muchos layouts cambiar o añadir uno se vuelve desesperante (En teoría en el último ciclo esta solucionado) • Olvida las constantes, bienvenidos los enums • Hazte amigo de las interfaces pero … • TIP: Si al implementar una interfaz te pide que implementes un intptr, te has olvidado de heredar de Java.Lang.Object
  • 9. Adaptarse a Xamarin (iOS) • El editor visual de storyboards no es lo que esperas.* • Vas a seguir usando Xcode para ciertas cosas • Muchos tutoriales se empeñan en hacer los layouts por código y no por storyboard • La gestión de assets da bastantes problemas (Parece haberse solucionado en el último ciclo) • Desplegar en dispositivo lleva bastante mas tiempo que lo que estáis acostumbrados
  • 10. Forms vs No Forms • Forms, opinión personal, no esta maduro. Aun asi lo usaría en estos puntos: • Una prueba de concepto • Apps en la que el diseño no sea importante y el tiempo de desarrollo sea mínimo • Apps en la que el rendimiento no sea importante, ya que es bastante peor que en Xamarin Classic. • Apps que no requieran gran uso de funcionalidad nativa.
  • 11. Xamarin en el mundo real • Xamarin es multiplataforma pero no es HTML Hibrido. • No esta pensado para hacer iOS y Android con el mismo estilo visual y misma navegación. • Requiere una arquitectura mas compleja que un desarrollo “normal” en cada plataforma. • Focalizamos esfuerzos por área de experiencia • Arquitectura pensando en las plataformas (Y a poder ser en MvvmCross). • Mas respeto a S.O.L.I.D. mas fácil será tu vida. • Es necesario alguien que coordine el trabajo entre los tipos de desarrolladores.*
  • 12. Xamarin en el mundo real • Cualquier aplicación que pase de ser una PoC debería pensarse seriamente en hacerse con MvvmCross. • Necesario formación en el patrón Mvvm. • Necesario formación en el framework MvvmCross. • Cambiar la forma de pensar como hacer las cosas. • Sí, la próxima charla será sobre Xamarin con MvvmCross
  • 13. Xamarin en el mundo real “Lo malo” • Bugs, Acostúmbrate a hacer Clean&Rebuild (AAPT…) • Problemas por desconocimiento. • Complicado conseguir perfiles. • HttpClient (HttpClientHandler nativo) • Portable Class Libraries (PCLs) • Agnósticas de plataforma • Complejo al principio • Los nuevos “mas buscados”. Lo cual puede ser bueno y malo.
  • 14. Xamarin en el mundo real “Lo peor” • 1 desarrollador != 3 plataformas • Multiplataforma != 1/3 tiempo desarrollo. • No vais a compartir un 90% del codigo. Todo lo que sea visual (Animaciones, diseños, etc.) ha de hacerse en cada plataforma. • Bindings
  • 15. Herramientas (IDEs) • Windows • VisualStudio, • Da algunos problemas de rendimiento en Android con muchos layouts. • Para trabajar con iOS es necesario tener un agente de compilación en un Mac • Permite trabajar con ReSharper    • XamarinStudio • Va ligeramente por detrás de XamarinStudio Mac. (Ej C#6.0) • Mac • XamarinStudio • Pequeños problemas con assets desde carpeta • Lentitud al desplegar en dispositivo • Problemas con los StoryBoards (sobre todo con las Constrain) • Necesario tener Xcode instalado en misma versión que XamarinStudio
  • 16. Herramientas (Emuladores) • Windows • Xamarin Android Player (Cancelado) • Emuladores x86 Xamarin Studio • VisualStudio Android Emulators • Habilitar Hyper-V • Mac • Emuladores propios de Xcode. • TIP: Xamarin Profiler
  • 18. Muchas gracias por asistir Sergio Gasca @SergioZgz ¿Preguntas?