Teléfono: 937958375 - Mail: info@wip-project.com

Desarrollo de aplicaciones móviles con Xamarin

Por WIPadmin el en Aplicaciones para móvil
0

Por qué desarrollar aplicaciones móviles con Xamarin

Aplicaciones móviles para Android/iOS con Xamarin
Es una buena pregunta. Cuando desarrollas de forma nativa para móviles, te encuentras con dos paradigmas de programación diferentes, cada uno de su padre y de su madre:

  • En el caso de iOS, hasta hace poco veníamos desarrollando con Objective C, un lenguaje “complejo y oscuro” y con una curva de aprendizaje diría casi sádica. Dejémoslo en que no es sencillo.
  • Por la parte de Android, vamos con Java, un paraíso en comparación con Objective C, pero con sus cosas.

Cuando nos encargan el desarrollo de una aplicación para móvil, salvo casos muy concretos, lo hacen para Android y para iOS, no podemos excluir una gran parte del pastel de nuestro negocio. El hecho de trabajar con dos lenguajes distintos tienes dos efectos inmediatos sobre el proyecto: aumenta el coste y dilata los tiempos de entrega.

En el mercado hay cantidad de frameworks basados en Javascript/TypeScript y HTML como pueden ser Framework7, Meteor, Ionic, Cordova, etc. No son frameworks nativos ni lo pretenden ser y son útiles para según que tipos de desarrollos, pero cuando hablamos de desarrollos donde se busque acceso a la plataforma con mayor profundidad, mayor seguridad, rendimiento, etc, se ha de morir en lenguajes nativos. Y ahí es donde aparece Xamarin.

Xamarin, la alternativa de Microsoft

Historia

Aunque parezca mentira, Microsoft también ha extendido sus tentáculos al desarrollo de aplicaciones para móvil  para las plataformas Android e iOS. Y lo hace a través de Xamarin.

Xamarin era una start-up fundada por Nat Friedman y Miguel de Icaza allá por el 2011. La idea era que partiendo de C# se pueda compartir código para escribir aplicaciones móviles nativas para Android, iOS y Windows y macOS. En febrero de 2016, el gigante fundado por Allen y Gates compra Xamarin por más de 400 millones de dólares.

Hasta 2016 Xamarin tenían un conjunto de herramientas denominado Xamarin Studio. A partir de mayo, Xamarin se integra con Microsoft Visual Studio, el potentísimo IDE de Microsoft. A partir de este momento Xamarin experimenta un gran paso adelante con la integración completa con los productos Microsoft y servicios Cloud Azure.

Ventajas

Algunas de las ventajas de desarrollar con Xamarin:

  • Utilizamos C# para la escritura del código multiplatarorma, compartiendo un altísimo porcentaje del mismo.
  • C# es un lenguaje potente, integral y muy flexible (a diferencia del complejo Objective C)
  • Desarrollo nativo. Acceso completo a las API de ambas plataformas.
  • Rentabilidad. El hecho de utilizar un sólo lenguaje y poder compartir código, evita tener que contratar a dos equipos diferentes, o realizar dos desarrollos diferentes
  • Desarrollo multidispositivo. Permite desarrollar tanto para móviles como para Smartwatch o SmartTV
  • El resultado es totalmente nativo. No hablamos de aplicaciones híbridas si no de aplicaciones que utilizan al máximo los recursos que ofrecen cada una de las plataformas.

Desventajas

Sería injusto decir que Xamarin es la mejor opción del mundo para desarrollos móviles. Hay algunos escenarios donde hay que tener en cuenta que puede no ser la mejor opción:

  • Escenarios donde haya gran carga gráfica, juegos o minijuegos, etc.
  • La compatibilidad con algunas librerías de terceros no está 100% asegurada. Xamarin tiene una gran cantidad de componentes propios, pero se puede dar el caso de que necesitemos trabajar con uno concreto de terceros que no funcione correctamente con Xamarin.
  • Escenario donde el tamaño importe. El tamaño de las aplicaciones es significativamente más grande que el de una desarrollada con lenguaje nativo. No es habitual que sea un problema, pero nos hemos encontrado en una ocasión en la que el desarrollo se tenía que optimizar en tamaño ya que los dispositivos del equipo que lo habían de llevar eran pequeñas y con poco espacio disponible.

Conclusión

Trabajar con Xamarin es una gran alternativa a los desarrollos nativos puros en la mayoría de escenarios habituales: optimizamos costes y tiempos de entrega en el desarrollo multiplataforma obteniendo un resultado 100% nativo. Como hemos comentado en algunos escenarios muy concretos puede ser necesario trabajar con ObjectiveC/Swift o JAVA, pero esa batalla se ha de librar después de analizar los requerimientos del proyecto a realizar.

Si tienes cualquier consulta sobre la mejor opción para el desarrollo de tu aplicación móvil no dudes en escribirnos.

Sobre el autor

WIPadminVer todas las entradas de WIPadmin