Xamarin es una empresa de software con sede en San Francisco , propiedad de Microsoft , fundada en mayo de 2011 [2] por los ingenieros que crearon Mono , [3] Xamarin.Android (anteriormente Mono para Android) y Xamarin.iOS (anteriormente MonoTouch), que son aplicaciones cruzadas. -implementaciones de plataforma de la infraestructura de lenguaje común (CLI) y las especificaciones de lenguaje común (a menudo llamado Microsoft .NET).
Con una base de código compartida de C# , los desarrolladores pueden usar las herramientas de Xamarin para escribir aplicaciones nativas de Android , iOS y Windows con interfaces de usuario nativas y compartir código en múltiples plataformas, incluidas Windows , macOS y Linux . [4] Según Xamarin, más de 1,4 millones de desarrolladores utilizaban los productos de Xamarin en 120 países de todo el mundo en abril de 2017. [5]
El 24 de febrero de 2016, Microsoft anunció que había firmado un acuerdo definitivo para adquirir Xamarin. [6]
Microsoft finalizó el soporte para Xamarin el 1 de mayo de 2024 a favor de .NET MAUI . [7]
En 1999, Miguel de Icaza y Nat Friedman lanzaron lo que eventualmente se conoció como Ximian para respaldar y desarrollar software para el naciente proyecto GNOME de De Icaza . Después de que Microsoft anunciara por primera vez su .NET Framework en junio de 2000, [8] de Icaza comenzó a investigar si era factible una versión de Linux . [9] El proyecto de código abierto Mono se lanzó el 19 de julio de 2001. Ximian fue comprado por Novell el 4 de agosto de 2003, que luego fue adquirido por Attachmate en abril de 2011. [10]
Después de la adquisición, Attachmate anunció cientos de despidos de la fuerza laboral de Novell, incluidos los desarrolladores de Mono, [11] poniendo en duda el futuro de Mono. [12] [13]
El 16 de mayo de 2011, Miguel de Icaza anunció en su blog que Mono sería desarrollado y respaldado por Xamarin , una empresa recién formada que planeaba lanzar un nuevo conjunto de productos móviles. Según de Icaza, al menos una parte del equipo original de Mono se había trasladado a la nueva empresa.
El nombre Xamarin proviene del nombre del mono Tamarin , reemplazando la T inicial con una X. Esto está en línea con el tema de nomenclatura utilizado desde que se inició Xamarin. [14]
Después de que se anunció Xamarin, se cuestionó el futuro del proyecto ya que MonoTouch y Mono para Android ahora competirían directamente con las ofertas comerciales existentes propiedad de Attachmate. En ese momento no se sabía cómo Xamarin demostraría que no habían utilizado ilegalmente tecnologías desarrolladas previamente cuando Novell los contrató para el mismo trabajo. [15] [16]
Sin embargo, en julio de 2011, Novell (ahora una subsidiaria de Attachmate) y Xamarin anunciaron que Novell había otorgado una licencia perpetua a Xamarin para Mono, MonoTouch y Mono para Android, y Xamarin asumió formal y legalmente la administración oficial del proyecto. [17] [18]
En diciembre de 2012, Xamarin lanzó Xamarin.Mac, [19] un complemento para el entorno de desarrollo integrado (IDE) MonoDevelop existente , que permite a los desarrolladores crear aplicaciones basadas en C# para el sistema operativo macOS de Apple y empaquetarlas para publicarlas a través de la App Store. .
En febrero de 2013, Xamarin anunció el lanzamiento de Xamarin 2.0. [20] El lanzamiento incluyó dos componentes principales: Xamarin Studio , un cambio de marca de su IDE de código abierto Monodevelop; [21] e integración con Visual Studio , el IDE de Microsoft para .NET Framework, que permite utilizar Visual Studio para crear aplicaciones para Android, iOS y Windows. [22]
El 17 de julio de 2013, Xamarin anunció que había cerrado $16 millones (~$20,6 millones en 2023) en financiación Serie B liderada por Lead Edge Capital. [23] También participaron varios inversores de su financiación Serie A , incluidos Charles River Ventures , Floodgate e Ignition Partners. El 21 de agosto de 2014, Xamarin cerró con éxito 54 millones de dólares adicionales (~68,5 millones de dólares en 2023) en financiación Serie C, que es una de las rondas de financiación más grandes jamás recaudadas por una plataforma de desarrollo de aplicaciones móviles. [24] En agosto de 2014, la financiación total de la empresa fue de 82 millones de dólares (~104 millones de dólares en 2023). [25]
El 24 de febrero de 2016, Xamarin y Microsoft anunciaron que Microsoft firmó un acuerdo definitivo para adquirir Xamarin. [6] [26] [27] Los términos del acuerdo no fueron revelados, aunque el Wall Street Journal informó que el precio oscilaba entre $ 400 millones y $ 500 millones. [ se necesita una mejor fuente ]
En Microsoft Build 2016, Microsoft anunció que abrirá el SDK de Xamarin y que lo incluirá como una herramienta gratuita dentro del entorno de desarrollo integrado de Microsoft Visual Studio , [28] y los usuarios de Visual Studio Enterprise también obtendrán las funciones empresariales de Xamarin de forma gratuita. de cargo. Como parte de la adquisición, también volverían a otorgar la licencia de Mono completamente bajo la licencia MIT y lanzarían todo el resto del software Xamarin SDK a través de .NET Foundation también bajo la licencia MIT. [29] [30]
La empresa Xamarin produce una plataforma de software de código abierto [ cita necesaria ] con el mismo nombre, y Xamarin 2.0 se lanzó en febrero de 2013. [31] Xamarin amplía la plataforma de desarrollador .NET con herramientas y bibliotecas específicamente para crear aplicaciones para Android , iOS , tvOS , watchOS , macOS y Windows ( UWP ) principalmente con C# en Visual Studio. Los desarrolladores pueden reutilizar su código C# existente y compartir código importante entre plataformas de dispositivos. Varias empresas conocidas, incluidas 3M , AT&T y HP [32] [33], han utilizado la plataforma para crear sus aplicaciones. Xamarin se integra con Visual Studio, el IDE de Microsoft para .NET Framework, y posteriormente está disponible para que lo utilicen los usuarios de macOS a través de Visual Studio para Mac. [21] Xamarin también lanzó una tienda de componentes para integrar sistemas backend, bibliotecas de terceros, servicios en la nube y controles de interfaz de usuario directamente en aplicaciones móviles. [34] [35]
Se introdujo en Xamarin 3 el 28 de mayo de 2014 y permite usar subconjuntos de controles portátiles que están asignados a controles nativos de Android, iOS y Windows Phone. [36] Windows Phone quedó obsoleto y eliminado en favor de UWP.
También es posible apuntar a otras plataformas diferentes como Tizen (de Samsung), GTK (Linux), WPF y macOS aunque hayan permanecido en Vista previa.
Este sistema utiliza XAML. Microsoft ha modificado este marco para que funcione con la Plataforma universal de Windows . [37]
Microsoft permite el desarrollo móvil nativo con Blazor . Mobile Blazor Bindings permite a los desarrolladores crear Android e iOS nativos utilizando C#, .NET y patrones de programación web. [38]
En Microsoft Build 2020 , Microsoft anunció que Xamarin.Forms se fusionaría en .NET 6 como interfaz de usuario de aplicación multiplataforma .NET (.NET MAUI). [39] .NET MAUI agrega compatibilidad con macOS a través de Mac Catalyst . [40] [41]
El 23 de mayo de 2022, durante Microsoft Build 2022 , se lanzó .NET MAUI. [42] Microsoft declaró que continuará brindando soporte a Xamarin hasta que sea completamente reemplazado por .NET MAUI en mayo de 2024. [43]
Xamarin Test Cloud permite probar aplicaciones móviles escritas en cualquier idioma en dispositivos reales sin jailbreak en la nube. Xamarin Test Cloud utiliza pruebas de UI basadas en objetos para simular interacciones reales del usuario. [44]
Xamarin es una plataforma para desarrolladores .NET compuesta por herramientas, lenguajes de programación y bibliotecas para crear muchos tipos diferentes de aplicaciones. [45] Xamarin proporciona complementos para Microsoft Visual Studio que permiten a los desarrolladores crear aplicaciones para Android, iOS y Windows dentro del IDE mediante la finalización de código e IntelliSense. Xamarin para Visual Studio también tiene extensiones que brindan soporte para la creación, implementación y depuración de aplicaciones en un simulador o dispositivo. [46] A finales de 2013, Xamarin y Microsoft anunciaron una asociación que incluía una mayor integración técnica y programas para clientes para hacer posible que sus bases de desarrolladores conjuntos se construyeran para todas las plataformas móviles. [47] Además, Xamarin ahora incluye soporte para las bibliotecas de clases portátiles de Microsoft [48] y la mayoría de las funciones de C# 5.0, como async/await. El CEO y cofundador de Xamarin, Nat Friedman, anunció la alianza en el lanzamiento de Visual Studio 2013 en Nueva York.
Xamarin es útil para desarrollar aplicaciones para iOS y Android.
El 31 de marzo de 2016, Microsoft anunció que fusionarían todo el software de Xamarin con cada versión de Microsoft Visual Studio, incluida Visual Studio Community, y esto agregó varias características de Xamarin que vendrán preinstaladas en Visual Studio, como un emulador de iOS. [49]
En el momento de su lanzamiento en febrero de 2013, Xamarin Studio era un IDE independiente para el desarrollo de aplicaciones móviles en Windows y macOS, [21] como parte de Xamarin 2.0 basado en el proyecto de código abierto MonoDevelop . [50] Además de un depurador, Xamarin Studio incluye finalización de código en C#, un generador de UI de Android para crear interfaces de usuario sin XML e integración con Xcode Interface Builder para el diseño de aplicaciones de iOS. [50] [51]
En Windows, Xamarin Studio ahora está en desuso y fue reemplazado por Xamarin para Visual Studio. En macOS, Xamarin Studio aún está en desarrollo, pero en 2016 se le cambió el nombre a Visual Studio para Mac . [52]
Xamarin.Mac fue creado como una herramienta para el desarrollo de aplicaciones tecnológicas de Apple utilizando el lenguaje de programación C#. Xamarin.Mac, al igual que Xamarin.iOS y Xamarin.Android, ofrece a los desarrolladores hasta el 90 % de la reutilización del código en Android, iOS y Windows. [53] Xamarin.Mac brinda a los desarrolladores de C# la capacidad de crear aplicaciones Cocoa completamente nativas para macOS y permite que las aplicaciones nativas se puedan colocar en la Mac App Store. [54] [55]
.NET Mobility Scanner de Xamarin permite a los desarrolladores ver qué parte de su código .NET se puede ejecutar en otros sistemas operativos, específicamente Android, iOS, Windows Phone y Windows Store. Es un servicio gratuito basado en web que utiliza Silverlight. [56]
En octubre de 2015, Xamarin anunció que había adquirido la plataforma de desarrollo sueca RoboVM para Java similar a su oferta. El motivo declarado por Xamarin para la adquisición fue que si desarrollaran una plataforma basada en Java desde cero, su producto final sería similar. a RoboVM para que adquirieran la empresa; como resultado, RoboVM opera independientemente del equipo de Xamarin. RoboVM permite a los desarrolladores crear aplicaciones Java para iOS y Android con UI totalmente nativas, rendimientos nativos y todas las aplicaciones Java tienen acceso completo a las API de cada plataforma de desarrollador. [57] [58]
En abril de 2016, Microsoft anunció que descontinuaría RoboVM y cesaría todas las suscripciones después del 30 de abril de 2017. [59]
BugVM, [60] se creó una bifurcación de RoboVM para mantener el estado de código abierto gratuito. [61]
Incluso si no lo respaldan, poseen un producto que compite directamente con las ofertas futuras de Xamarin. Sin algún tipo de acuerdo legal entre Attachmate y Xamarin, este último enfrentaría la desalentadora perspectiva de demostrar que su nuevo desarrollo no utiliza la tecnología que usaba el anterior. Teniendo en cuenta que esto es en realidad solo una envoltura de la API nativa, sería difícil demostrar que tuvo una implementación limpia incluso para un equipo que no estaba íntimamente familiarizado con el código de Attachmate.
Pero con una falta total de claridad sobre si Novell permitirá a Xamarin vender sus nuevos productos, o si existen acuerdos para facilitar tal escenario, nos quedamos en un mundo desagradable en el que no tenemos una solución convincente o viable sin compromisos. desarrollo multiplataforma.
El acuerdo otorga a Xamarin una licencia amplia y perpetua para toda la propiedad intelectual que cubre Mono, MonoTouch, Mono para Android y Mono Tools para Visual Studio. Xamarin también brindará soporte técnico a los clientes de SUSE que utilicen productos basados en Mono y asumirá la administración del proyecto comunitario de código abierto Mono.
Xamarin 2.0 incluye las herramientas de desarrollo de Android, iOS y Mac de la empresa en un único paquete asequible