Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Experiencia con Xamarin en el mundo real de los proyectos.

1,552 views

Published on

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/

Published in: Software
  • Be the first to comment

  • Be the first to like this

Experiencia con Xamarin en el mundo real de los proyectos.

  1. 1. Experiencia en proyectos reales con Xamarin Twitter del grupo - @Xamarin_Madrid #XamarinMadrid Elbrinner Fernandes www.elbrinner.com @elbrinner
  2. 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. 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. 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  …
  5. 5. Formando el equipo de trabajo
  6. 6. Configurando el entorno para empezar
  7. 7. Entorno de desarrollo
  8. 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. 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. 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. 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.
  12. 12. Componentes de plataforma
  13. 13. Patrón Facade
  14. 14. Mapper
  15. 15. Binding
  16. 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. 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
  18. 18. Preguntas y respuestas ¿Dudas?
  19. 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
  20. 20. Gracias por venir

×