Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Xamarin

Gustavo Leon
December 07, 2014

 Xamarin

Presentación hecha para el curso de TID de la UPC, Lima, Perú

Gustavo Leon

December 07, 2014
Tweet

More Decks by Gustavo Leon

Other Decks in Programming

Transcript

  1. Integrantes: •  Luis Canales •  Francisco Pariona •  Gary Figuerola

    •  Gustavo Leon        UPCedu                UPCedu   Escuela  de  Ingeniería  de  Sistemas  y  Computación   SI292  –  Taller  de  inves?gación  y  desarrollo   Diciembre  2014  
  2. Agenda   Introducción a Cross-Platform §  Definición de Cross-Platform § 

    Clasificación de Cross-Platform §  Definición de Aplicación Nativa Cross-Platform (NativeX)
  3. Agenda   Introducción a Xamarin §  Definición de Xamarin § 

    Estadísticas •  Herramientas cross-platform por tiempo ahorrado •  Herramientas cross-platform por complejidad de desarrollo §  Xamarin Platform §  Xamarin Studio §  Xamarin for Visual Studio §  Xamarin.Forms §  Xamarin Test Cloud §  Desarrolladores afiliados §  Impulsores de Xamarin •  Microsoft y Xamarin •  SAP y Xamarin §  Clientes §  Casos de éxito
  4. Agenda   Xamarin §  Xamarin.Android §  Xamarin.iOS §  Alcance § 

    Xamarin y Windows Phone §  Xamarin.Forms §  Plugins para Xamarin §  Licencias y precios §  Xamarin Student Ambassadors §  Azure con Xamarin §  Roslyn y Xamarin (Mono)
  5. Agenda   Introducción a Cross-Platform §  Definición de Cross-Platform § 

    Clasificación de Cross-Platform §  Definición de Aplicación Nativa Cross-Platform (NativeX)
  6. ¿Qué es una aplicación nativa cross-platform (NativeX)? Aplicaciones cross-platform que

    compilan a código nativo Código compartido Lógica de la aplicación Acceso a datos Acceso a servicios Acceso al dispositivo Interfaz de usuario Código específico para iOS Aplicación" iOS Interfaz de usuario Código específico para Android Aplicación Android Interfaz de usuario Código específico para Windows Phone Aplicación Windows Phone
  7. Agenda   Introducción a Xamarin §  Definición de Xamarin § 

    Estadísticas •  Herramientas cross-platform por tiempo ahorrado •  Herramientas cross-platform por complejidad de desarrollo §  Xamarin Platform §  Xamarin Studio §  Xamarin for Visual Studio §  Xamarin.Forms §  Xamarin Test Cloud §  Desarrolladores afiliados §  Impulsores de Xamarin •  Microsoft y Xamarin •  SAP y Xamarin §  Clientes §  Casos de éxito
  8. ¿Qué es Xamarin? Aplicaciones nativas multi-plataformas, utilizando C# y .Net

    Lógica de aplicación (C#) Interfaz de usuario (C#) App iOS nativa App Android nativa App Windows Phone nativa
  9. Reutilización de código por plataforma con Xamarin 70% 30% iOS

    Lógica de la aplicación Interfaz de usuario 86% 14% Android Lógica de la aplicación Interfaz de usuario Fuente: Análisis aplicación iCircuit
  10. Herramientas cross-platform por tiempo ahorrado 0% 5% 2% 3% 10%

    31% 25% 34% 39% 43% 69% 62% 56% 50% 37% 0% 8% 8% 2% 8% 0% 20% 40% 60% 80% 100% V-‐Play Unity Qt Corona SDK Xamarin No opina 50% más rápido 10 -‐ 50% más rápido No ahorra tiempo 10 -‐ 50% más lento 50% más lento Fuente: research2guidance’s Cross Platform Tool Benchmarking 2014
  11. Herramientas cross-platform por complejidad de desarrollo Fuente: research2guidance’s Cross Platform

    Tool Benchmarking 2014 0% 15% 21% 16% 16% 23% 17% 39% 21% 39% 40% 38% 44% 52% 55% 51% 63% 43% 63% 48% 60% 47% 35% 32% 29% 26% 20% 18% 16% 13% 0% 20% 40% 60% 80% 100% Bajo / Muy bajo Promedio Alto / Muy alto
  12. Xamarin Platform - ¿Cómo funciona? Xamarin.iOS: Compilado a binario ARM

    Xamarin.Android: Compilado en tiempo de ejecución
  13. Xamarin for Visual Studio - Características Integrado con IntelliSense Desarrollo

    en iOS Uso del debugger de Visual Studio Diseñador de interfaces
  14. Xamarin Test Cloud   Pruebas utilizando Behavior Driven Development  

    Soporte para integración continua con Team Foundation Server, Jenkins y TeamCity   Monitoreo de rendimiento en tiempo real   Más de 1,000 dispositivos disponibles para pruebas en la nube
  15. Xamarin Test Cloud - Características Pruebas para interfaz de usuario

    Pruebas para fragmentación en Android Soporte para cientos de dispositivos Soporte para integración continua
  16. Xamarin Test Cloud – Precios Básico Profesional Negocios Empresarial Precio

    US$ 1,000 / mes US$ 5,000 / mes US$ 8,000 / mes US$ 12,000 / mes Límite de aplicaciones 2 4 10 20 Horas de prueba 200 horas mensuales 1,000 horas mensuales 1,600 horas mensuales 2,400 horas mensuales Soporte E-mail Personal dedicado Personal dedicado Personal dedicado Prioridad de ejecución No Sí Sí Sí
  17. SAP y Xamarin Curso de Xamarin SAP SDK Certificación para

    consultores Xamarin + SAP SAP Mobile Platform en Xamarin SAP Mobile Platform en Test Cloud
  18. SAP Mobile Platform – Características   Arquitecturas: Nativas, híbridas, mobile

    web y SMS app   Soporte para HTML5   Soporte para Apache Cordova   Soporta Bring Your Own Tools (BYOT)
  19. Casos de éxito: Rdio   Reproductor de música en la

    nube   Primera versión: Diciembre 2012   Más de 50,000 líneas de código compartidas   Lanzamientos simultáneos para Android y iOS
  20. Casos de éxito: Bosch-Siemens   Aplicación con manuales interactivos de

    electrodomésticos   Integrado con Amazon Web Services   Desarrollado por uno de los consultores Premier de Xamarin
  21. Casos de éxito: Kimberly-Clark   Aplicación para ventas de material

    médico y de seguridad   App para iPad escrita en C#   Código existente reusado   Desarrollado por uno de los consultores Premier de Xamarin
  22. Agenda   Xamarin §  Xamarin.Android §  Xamarin.iOS §  Alcance § 

    Xamarin y Windows Phone §  Xamarin.Forms §  Plugins para Xamarin §  Licencias y precios §  Xamarin Student Ambassadors §  Azure con Xamarin §  Roslyn y Xamarin (Mono)
  23. Xamarin.Android: APIs soportadas   Soporte para APIs experimentales: Google Wear,

    Google Glass   Acceso a bibliotecas en Java desde C#
  24. Xamarin.iOS: APIs soportadas   Soporte para APIs de bajo nivel:

    CoreAudio   Acceso a bibliotecas en Objective-C desde C#
  25. Xamarin y Windows Phone   Gracias a Xamarin, se puede

    reutilizar el código de la lógica del negocio, escrita en C#
  26. Xamarin.Forms Enfoque Xamarin tradicional: Controles por plataforma Interfaz de usuario

    compartida (C#) Xamarin + Xamarin.Forms: Controles compartidos Código de la aplicación (C#) Código de la aplicación (C#) Interfaz de usuario iOS (C#) Interfaz de usuario Android (C#) Interfaz de usuario Windows Phone (C#)
  27. Xamarin.Forms – Componentes de layout (I) Frame Content" Page Master

    Detail Page Navigation Page Tabbed Page Carousel Page
  28. Xamarin.Forms – Componentes de layout (II) Stack" Layout Absolute Layout

    Relative Layout Grid" Layout Content" View Scroll" View
  29. Plugins para Xamarin   Acceso a NuGet (+22,000 paquetes)  

    Tienda de componentes propios (gratuitos y de pago)   Algunos componentes: SQLite, Parse, SAP, Microsoft Azure
  30. Licencias y precios (I) Inicial Independiente Negocios Empresarial Académico Precio

    Gratuito US$ 25 / mes US$ 83 /mes US$ 999 / año US$ 158 /mes US$ 1899 / año US$ 99 / año Uso permitido Individual Individual Organizacional Organizacional Individual Tipo de suscripción Ninguna Mensual Anual Anual Anual Aplicaciones de tamaño ilimitado No incluido Incluido Incluido Incluido Incluido Xamarin.Forms No incluido Incluido Incluido Incluido Incluido Soporte para Visual Studio No incluido Incluido Incluido Incluido Incluido
  31. Licencias y precios (II) Inicial Independiente Negocios Empresarial Académico Precio

    Gratuito US$ 25 / mes US$ 83 /mes US$ 999 / año US$ 158 /mes US$ 1899 / año US$ 99 / año Soporte a través de email No incluido No incluido Incluido Incluido Incluido Soporte técnico dedicado No incluido No incluido No incluido Incluido No incluido Tiempo de respuesta de un día No incluido No incluido No incluido Incluido No incluido
  32. Xamarin Student Ambassadors Participación en Xamarin Evolve! Acceso gratuito a

    Xamarin University! Suscripciones gratuitas para Xamarin.Android y Xamarin.iOS!
  33. Azure con Xamarin   Azure Mobile Services: Permite guardar datos

    en la nube, autenticación y envío de notificaciones   Azure Messaging: Permite utilizar los Azure Notification Hubs para enviar notificaciones push Azure" Mobile Services Azure" Messaging
  34. Azure Mobile Services – Características   Disponible para Xamarin.Android y

    Xamarin.iOS   Servicios: §  Users: Autenticación de usuarios vía Azure §  Data: Guardar registros y configuraciones entre dispositivos con Azure §  Push: Envío de notificaciones desde utilizando Azure Notification Hubs
  35. Azure Mobile Services – Precios Gratuito Básico Estándar Precio Gratis

    (10 servicios / mes) US$ 25 / mes (por servicio) US$ 199 / mes (por servicio) Llamadas a APIs 500,000 1,5 millones por servicio 15 millones por servicio Dispositivos activos 500 Ilimitados Ilimitados Notificaciones push 1 millón 10 millones 10 millones Base de datos SQL 20 MB 20 MB 20 MB
  36. Roslyn y Xamarin (Mono) Roslyn: plataforma open source de compilación

    de .Net para Visual Basic y C#   Permite realizar análisis estático, navegación y refactorización de código   El Proyecto Mono está trabajando para lograr que Roslyn funcione en entornos Unix
  37. Integrantes: •  Luis Canales •  Francisco Pariona •  Gary Figuerola

    •  Gustavo Leon        UPCedu                UPCedu   Escuela  de  Ingeniería  de  Sistemas  y  Computación   SI292  –  Taller  de  inves?gación  y  desarrollo   Diciembre  2014