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
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)
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
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)
¿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
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
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
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
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
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í
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)
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
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
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
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#)
Plugins para Xamarin
Acceso a NuGet (+22,000 paquetes)
Tienda de componentes propios (gratuitos y de pago)
Algunos componentes: SQLite, Parse, SAP, Microsoft Azure
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
Xamarin Student Ambassadors
Participación en Xamarin Evolve! Acceso gratuito a Xamarin University! Suscripciones gratuitas para Xamarin.Android y Xamarin.iOS!
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
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
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
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
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