¿Cómo es posible hacer una aplicación multiplataforma en iOS y Android en Xamarin usando C #?

Hola, feliz de sonar aquí. Trabajo en Xamarin como gerente asociado.

Escribí sobre esto mientras respondía esta pregunta: ¿Cuáles son sus pensamientos a favor y en contra de las tecnologías móviles multiplataforma?

Pero parafraseando:

Xamarin permite a los desarrolladores compartir una gran parte de la lógica de la aplicación detrás de la aplicación (llamadas a servicios web, autenticación, SSO, integraciones de back-end de datos) entre proyectos y al mismo tiempo permite a los desarrolladores construir UI nativas para cada plataforma. Las bibliotecas Objective C para iOS y las bibliotecas Java para Android están pre-enlazadas y disponibles a través de Xamarin Component Store, lo que significa que pueden interoperar con su código C #. Por lo tanto, en este caso, los desarrolladores disfrutan de un tiempo de comercialización acelerado y aplicaciones completamente nativas sin tener que mantener múltiples bases de código y herramientas de desarrollo de software.

De hecho, las aplicaciones se ejecutan de forma nativa, ya que no se interpretan como un PhoneGap o una aplicación Appcelerator; en cambio, el código fuente se compila en los controles nativos. Xamarin se basa en el tiempo de ejecución de Mono, que originalmente hace que las compilaciones de .NET se ejecuten en dispositivos que no son de Windows. Con el advenimiento de la revolución móvil, esa tecnología se convirtió en la base para el desarrollo móvil multiplataforma. Es la tecnología que explica cómo el código C #, una vez compilado, en realidad se convierte en código binario nativo. Para iOS, el código C # se compila de antemano en código binario ARM. Y para Android, el código C # se compila justo a tiempo y se empaqueta con la máquina virtual Android (Dalvik) junto al propio Mono VM de Xamarin. Lo que obtienes es una aplicación de Android completamente nativa y de alto rendimiento (y para colmo si no hay sobrecarga de la aplicación en tu SDK).

Espero que ayude a arrojar algo de luz sobre el asunto.

Creación de aplicaciones multiplataforma con Xamarin: perspectiva de un desarrollador de Android

Escribir código reutilizable que se pueda compartir en múltiples plataformas puede facilitar mucho más el desarrollo de aplicaciones móviles. Pero, ¿cómo lo hace sin pagar el costo habitual de mantenimiento, facilidad de prueba y poca experiencia del usuario que viene con el desarrollo de aplicaciones móviles multiplataforma?

En este artículo, el ingeniero de software de Toptal Freelance, Emran Bajrami, nos guía por Xamarin y nos muestra técnicas para crear aplicaciones multiplataforma de alta calidad.

#CrossPlatform #MobileApp #Xamarin

Xamarin porta todas las bibliotecas de Android (Java) e iOS (objetivo C) en C #, con esto llegamos a aplicaciones desarrolladas para Android o iOS a través de C #. Recientemente, Xamarin introdujo los formularios de Xamarin, mediante los cuales podemos codificar nuestra aplicación en C # como código común para todas las plataformas (Android / iOS / Windows Phone) y en tiempo de ejecución se convertirá a sus respectivos códigos de plataforma, es decir, Android o iOS.

Espero que esto aclare tu duda. Si necesita más información, hágamelo saber. Gracias.