Experiencia con Xamarin en el mundo real de los proyectos.
Charla del grupo Xamarin Madrid del día 21-11-2017
Enlace del grupo:
https://www.meetup.com/es-ES/Xamarin-Madrid/
Experiencia con Xamarin en el mundo real de los proyectos.
1. Experiencia en
proyectos reales con
Xamarin
Twitter del grupo - @Xamarin_Madrid #XamarinMadrid
Elbrinner Fernandes
www.elbrinner.com
@elbrinner
2. Contenido
Experiencia con Xamarin en el mundo real. (’45’)
Charla abierta sobre el futuro de Xamarin. (’15’)
Definir temas para los próximos encuentros. Sobre Xamarin Madrid (’15’)
3. ¿Classic o Forms?
• Mejor rendimiento
• Pixel perfecto
• Diseño complejo
• Presupuesto ajustado
• Debes llevar tus aplicaciones al mercado
rápidamente
• Su equipo interno tiene más experiencia
con .Net que con Android y IOS
4. La propuesta – Requisitos
Desarrollar una aplicación nativa para IOS y Android para la tienda online X.
La aplicación debe consumir los servicios actuales, pero debe está preparada
para que siga funcionando con cambios futuros en los servicios.
Pantalla de registro de cliente
Login
Debe realizar búsqueda por lectores de barra
Notificaciones push
Menú dinámico
Diseño pixel perfecto
…
8. Arquitectura del proyecto
• MVVM ¿solo o con frameworks?
• Inversión de control - IOC
• Inyección de dependencias -DI
• Mapper
• Tipo de proyecto (Compartido, PCL , .NET
Standard …)
• Sistema de navegación
• Paso de parámetros complejos entre viewmodel
• Patrón Facade
• Principios S.O.L.I.D
• Gestionar distintos entornos de desarrollos
• Seguridad
• Componentes de plataforma común
• …
9. ModernHttpClient
Esta biblioteca trae las últimas bibliotecas de redes específicas de la
plataforma a las aplicaciones de Xamarin a través de un controlador
HttpClient personalizado. Escriba su aplicación usando System.Net.Http,
pero suelte esta biblioteca y se irá más rápido. Esto es posible gracias a dos
bibliotecas nativas:
En iOS, NSURLSesión
En Android, a través de OkHttp 1.5
10. Arquitectura – MVVM
Nos permite dividir el trabajo de manera muy sencilla (diseñadores –
desarrolladores)
El mantenimiento es más sencillo.
Permite realizar Test a nuestro código.
Permite una más fácil reutilización de código.
11. Principios S.O.L.I.D
Es un acrónimo que representa 5 principios básicos del desarrollo orientado a
objetos para crear un desarrollo fácil de mantener y escalar. Consiguiendo
bajar el acoplamiento, alta cohesión y alta encapsulación.
Estos son sus puntos clave:
Responsabilidad única.
Abierto a extensión, cerrado a modificación.
Sustitución de Liskov, los objetos deben ser reemplazables por objetos
hijos sin alterar la funcionalidad.
Segregación de interfaces.
Depender de abstracciones no de implementaciones.
16. Principales problemas con xamarin
No es fácil encontrar perfiles en el mercado
La aplicación es más pesada, ocupa más Mb que en nativo.
Algunos errores de compilación son difíciles de comprender
Muchas liberarías no están para Xamarin y tenemos que hacer un binding
17. Ventajas con xamarin
Escribir una única vez la lógica de negocio para todas las plataformas
Poder reaprovechar la lógica de negocio en futuras aplicaciones
Mismo lenguaje C#
Rendimiento nativo, elementos nativos, no hay diferencia para un usuario.
Más barato que realizar la misma app de forma nativa para IOS y Android
Se puede trabajar con un solo entorno de desarrollo
19. Propuestas de charlas futuras
Realizar un Binding de una librería de Android y IOS
Crear un proyecto con Xamarin Forms usando inyección de dependencia
Evento de un sábado completo explicando como desarrollar una app completa
desde 0
Como mescla vistas nativas con forms en el mismo proyecto
Uso de MvvmCross
Uso de Prism
Uso de renderers
Accesibilidad con Xamarin Forms
Layout compression
Embeddinator-4000
IOS 11