viernes, 3 de agosto de 2012

Desarrollo multiplataforma.

Desde diciembre del año pasado que publique el último artículo donde les hable de la estructura de proyectos dentro del XCode de Apple, me he mantenido ocupado aprendiendo a codificar con una visión de dispositivos móviles.

xamarin1

El mercado de dispositivos móviles se encuentra principalmente dominado por tres plataformas: iOS, Androide y Windows Phone. Se imaginan poder desarrollar con un mismo lenguaje para los tres?...eso es posible gracias a Xamarin.

 

Mi conversión

La verdad cuando publique el ultimo articulo en Diciembre estaba decidido a aprender a programar usando XCode en una Mac; me había resignado a hacerlo, consolándome con la idea que el lenguaje Objetive-C es similar al C#.

Y fue entonces cuando me dije: No existirá alguna plataforma de desarrollo que me permita codificar con C# y reutilizar le código en los tres dispositivos?

Con esa pregunta en mente, me avoque a buscar en Google alguna iniciativa o proyecto que me pudiera servir. Ya se imaginaran mi alegría cuando encontré un producto denominado Xamarin Mobile Plataform.

 

Que es Xamarin?

Es un plataforma que nos permite desarrollar aplicaciones para iOS (iPad, iPhone y Mac) y Androide. Todo esto usando el lenguaje C# con las bibliotecas del Mono.Net Framework.

Si lo sé, suena demasiado bonito para ser cierto…lo mismo pensé, cuando me lo encontré. Hoy después de casi 8 meses de desarrollo y de trabajar con esta plataforma, puedo decir que a pesar de mis dudas, la plataforma funciona.

 

Limitaciones.

El único problema que me encontré fue que para desarrollar en iOS, se requiere una computadora Mac, con el entorno de desarrollo de Apple.

Por lo tanto fue necesario solicitar mi Mac para poder emprender el vuelo y aprender a volar en este nuevo ambiente.

 

Arquitectura.

Gracias a mi pasada incursión en la arquitectura MVC de ASP.NET, (que también he descuidado por la carga de trabajo), me fue posible entender rápidamente la forma de programación que se emplea en las aplicaciones para iOS.

Otro aspecto que me motivo a hacerlo fue la adopción de patrones de desarrollo y protocolos, que las bibliotecas y herramientas favorecen y exigen. A los cuales me he ido acercando desde el año pasado y con los que me siento muy a gusto.

A pesar de ser un ambiente de desarrollo completamente diferente y de tratarse de sistemas operativos que desconocía en ese entonces, la presencia de estos patrones, así como el uso de una arquitectura tan poderosa como es MVC, me he sentido muy cómodo desarrollando aplicaciones para Windows, iOs y Androide.

 

Comentario final.

Lo mejor de todo es que no fue necesario aprender otro lenguaje de programación, puedo programar para iOs y Androide usando C#, lo que resulta muy practico para quien ha programado siempre usando tecnologías de Microsoft.

A pesar de la carga de trabajo, voy a tratar de retomar este Blog, compartiendo con ustedes algunos consejos y técnicas.

Suerte.

No hay comentarios:

Publicar un comentario