Compartir
Contenidos contratados por la marca que se menciona

La revolución en desarrollo móvil con Visual Studio 2015 y Xamarin

La revolución en desarrollo móvil con Visual Studio 2015 y Xamarin
Guardar
2 Comentarios
Publicidad

Newsletter

Hace 18 años, Microsoft, lanzó su primera versión de Visual Studio. Un entorno completo que permite a los desarrolladores crear aplicaciones y servicios en cualquier entorno que soporte la plataforma .NET.

En junio de 2000, con la primera versión de .NET, Miguel de Icaza dentro del proyecto Mono, empieza a trabajar con una versión para Linux de .NET. Después de altos y bajos en el camino, en Julio de 2011, sorprende al mercado con un IDE totalmente integrado con el de Microsoft para desarrollar con .NET aplicaciones para dispositivos Android y iOS.

Xamarin, revoluciono a los desarrolladores que llevábamos 11 años trabajando con .NET y más concretamente, a los que lo hacíamos con C#. Fue el primer entorno que nos permitía aplicar nuestros conocimientos de programación con C# a los dispositivos móviles con una curva de aprendizaje aceptable y que además, permitía a las empresas que hacían uso de ella, ser mucho más competitiva compartiendo código entre las plataformas, con un coste menor y con un time to market mayor.

No fue hasta la versión de .NET Framework 4.0 hasta que realmente llego la autentica revolución; ¡aparecían las PCL! Las Portable Class Library que permitían ser compiladas, íntegramente a través de Xamarin, para Android, Windows Phone e iOS permitiendo compartir entre 60% - 70% de nuestro código.

Aunque esta revolución no queda aquí. Xamarin ha ido un paso más allá creando Xamarin.Forms el cual nos permite hacer, además de lo comentado en el anterior párrafo, realizar la UI de la app con XAML o C# una sola vez aumentando nuestro código compartido del 70% al 80%-90%. ¿Increíble verdad?

C# cómo lenguaje universal

Sin tener en cuenta la unificación del desarrollo con Windows 10, actualmente, C# esta soportado en 2.6 billones de dispositivos. Con Xamarin, todo lo que puedes hacer con Objective-C, Swift o Java, lo puedes hacer con C# y beneficiarte de usar un lenguaje orientado a la programación asíncrona.

Interfaces de usuario nativas

A diferencia de otras plataformas de desarrollo, podemos realizar interfaces nativas en todas las plataformas para ofrecer la mejor experiencia de usuario posible y, además, nos ofrece un entorno muy simple para diseñar nuestras aplicaciones móviles con Android e iOS desde Visual Studio.

Xamarin Designer para Visual Studio Diseñando aplicaciones para iOS desde Visual Studio 2015 con Xamarin Designer

Cabe remarcar que para la programación para Apple requeriremos host remoto de iOS, es decir, necesitaremos un MAC que nos haga de compilador remoto aunque lo usemos desde Visual Studio instalado en Windows.

Android Designer para Visual Studio 2015 Diseñando aplicaciones para Android desde Visual Studio 2015

Xamarin Designer nos ofrece una forma diferente de hacer las interfaces de las apps y nos ayuda a ser más productivos, rápidos y ágiles en el desarrollo de las mismas.

Visual Studio cómo editor único

Aunque Xamarin tiene su propio IDE, Xamarin Studio, la plataforma se integra totalmente con Visual Studio y con Team Foundation Server (TFS). Por este motivo, además de toda la potencia que nos ofrece Xamarin, le tendremos que sumar la de Visual Studio del que nos podremos beneficiar de sus características de forma completa y en todas las etapas de desarrollo de nuestra app,es decir, desde el momento de diseñar la UI hasta el código de nuestra app.

Dos modelos de desarrollo

En un fragmento anterior hacia mención al share que nos ofrece Xamarin. Bien, esto dependerá directamente del modelo de desarrollo que escojamos y el objetivo que tengamos con nuestra aplicación.

Shared Projects o Portable Class Library

Utilizamos el mismo lenguaje para la lógica de negocio, las API y las estructuras de datos para compartir entre un 60%-70% de código en todas las plataforma de desarrollo móvil pero realizando la interfaz de usuario con lenguajes nativos de cada plataforma a través de Xamarin Designer.

Shared Project o Porable Class Library Compartimos toda la lógica de negocio y usamos Xamarin Designer para la UI

Este modelo nos ofrece un conjunto de ventajas y desventajas que debemos tener presentes para decidir que modelo de desarrollo usaremos.

  • Para aplicaciones con un diseño gráfico muy específico y pulido.
  • Aplicaciones que utilizan muchas APIs específicas de alguna plataforma.
  • Aplicaciones dónde la UI es mas importante que compartir código.
  • Curva de aprendizaje más elevada.

Xamarin.Forms

Utiliza el mismo lenguaje para la lógica de negocio y para la interfaz de usuario escogiendo entre C# o XAML para compartir un elevado promedio de código en todas las plataformas.

Xamarin Forms Con este modelo podemos hacer nuestra UX desde código con C# o XAML

Al igual que el modelo más clásico, debemos tener presentes sus ventajas y desventajas.

  • Para aplicaciones basadas en formularios.
  • Aplicaciones que requieren poca funcionalidad específica de la plataforma.
  • Aplicaciones dónde es más importante compartir código que la UI personalizada, cómo por ejemplo, pruebas de concepto o aplicaciones sencillas basadas en formularios de entrada de datos.
  • Curva de aprendizaje mínima.

La evolución natural, y más con la unificación del modelo de desarrollo que está siguiendo Microsoft será Xamarin.Forms aunque, por el momento, pasa por su segunda versión y sigue en evolución.

Una plataforma completa

Xamarin contempla todas las áreas de desarrollo de una aplicación basada en la movilidad con herramientas especificas para la automatización de pruebas en más de 1.000 dispositivos en la nueve, con herramientas analíticas y totalmente integrado en el ecosistema de ALM de Microsoft.

Compilación Escribir las apps con C# y compartir el mismo IDE para iOS, Android y Windows.

Test Con Xamarin Test Cloud usando Calabsh (Ruby) o Xamarin.UITest (C#) podremos automatizar nuestras pruebas en más de 1.000 dispositivos hayamos realizado nuestra aplicación en Xamarin o bien en Objective-C/Switft o Java.

Test Cloud de Xamarin Si estamos trabajando con Xamarin, la evolución natural es usar UITest. Por lo contrario, se recomienda Calabash.

Monitor Con Xamarin Insights podremos auditar en tiempo real nuestra app, las excepciones y el uso con informes detallados.

¿Te ha gustado la plataforma y tienes ganas de más?

Si todo lo que has leído te ha gustado y estas interesado en ver un ejemplo practico y aprender su funcionamiento, os recomendamos el siguiente vídeo.

En resumen, una plataforma que gestiona todo el ALM de una aplicación de movilidad totalmente integrado con el ecosistema de Microsoft y con una de sus mejores herramientas; Visual Studio.

En Visual Studio:

Publicidad

También te puede gustar

Comentarios cerrados

Ver más artículos