Cross-Plattform-Entwicklung: Microsoft übernimmt Xamarin

Xamarin ist Hersteller von Werkzeugen zur Cross-Plattform-Entwicklung auf Basis von C#. In dem Unternehmen finden sich auch die Entwickler, die Mono und Moonlight als Open-Source-Alternative zu .NET und Silverlight entwickelt hatten.

 –  52 Kommentare
Cross-Plattform-Entwicklung: Microsoft übernimmt Xamarin

Microsoft hat Xamarin, einen Hersteller von Werkzeugen zur Cross-Plattform-Entwicklung, übernommen. Die kalifornische Firma Xamarin stellt eine App-Entwicklungsumgebung auf Basis der Programmiersprache C# und .NET-Klassen bereit. Neben iOS, OS X, Android und Windows unterstützt Xamarin mittlerweile auch tvOS, WatchOS und Playstation. Basis für die Xamarin-Produkte ist Mono, eine quelloffene Implementierung von Microsofts .NET Framework, die es seit 2001 gibt.

Mono ist eine Nachimplementierung, weil Microsoft damals den Quellcode von .NET nicht als "Open Source", sondern als "Shared Source" deklarierte, der nach dem "Nur gucken, nicht anfassen"-Motto eine Weiterverwendung des Quellcodes nicht erlaubte. Das Mono-Projekt hat in aufwendiger Arbeit die .NET-Laufzeitumgebung, den C#-Compiler und einen Großteil der .NET-Klassenbibliothek nachgebaut und sich damit bemüht, kompatibel zu Microsofts Vorbild zu bleiben.

Microsoft hat diese Implementierung zunächst toleriert, später dann beim mittlerweile eingestellten Moonlight, der Silverlight-Implementierung für Linux, auch offiziell mit dem Mono-Entwicklungsteam kooperiert. Seitdem Microsoft im November 2014 das .NET Framework selbst zu Open Source erklärt hat, findet ein reger Austausch von Quellcode zwischen den Entwicklungsteams statt (siehe Mono 4.0).

Mono wurde erstmals auf der O'Reilly-Konferenz im Juli 2001 angekündigt als Open Source-Projekt der damaligen Firma Ximian unter Leitung von Miguel de Icaza und Nat Friedman. Ximian wurde 2003 von Novell übernommen. Eine kommerzielle Bedeutung bekam Mono erst mit dem Aufkommen der mobilen Betriebssysteme iOS und Android. Im September 2009 erschien MonoTouch für iPhone, iPod und iPad; im April 2011 folgte Mono for Android. Nach der Übernahme von Novell durch Attachmate gründete sich die Mono-Entwicklungsabteilung in die neue Firma Xamarin aus. Die kommerziellen Produkte wurden umbenannt in Xamarin.iOS und Xamarin.Android.

Bereits im März 2014 gab es Gerüchte für eine Übernahme von Xamarin durch Microsoft, die dann aber zunächst doch nicht zustande kam. Microsoft liefert aber seit Visual Studio 2015 eine Starter-Version von Xamarin zusammen mit seiner Entwicklungsumgebung aus. Xamarin hat laut Aussage von Microsoft 150.000 Kunden in 120 Ländern.

.NET-Entwickler können nun darauf hoffen, dass die beiden Plattformen enger zusammenwachsen. Während viele Basisklassen einheitlich sind, gibt es bislang keine ausgereifte Benutzeroberflächentechnik, die auf allen Plattformen laufen kann. Mit Windows Presentation Foundation (WPF), Windows Runtime-XAML und Xamarin Forms gibt es vielmehr drei Dialekte der Markup-Sprache eXtensible Application Markup Language (XAML), die aber nicht ganz kompatibel sind. Xamarin Forms, das zumindest auf iOS und Android sowie in Windows 10 Universal Apps läuft, liegt bei der Entwicklung noch weit hinter den anderen XAML-Dialekten zurück.

Auch erscheint in Zeiten, in denen Microsoft das .NET Framework als .NET Core selbst quelloffen und plattformneutral entwickelt, die Fortführung von Mono als Konkurrenz zu .NET Core nicht mehr sinnvoll.

Microsoft will Pläne für die Integration von Xamarin in die Microsoft-Produkte auf der Build-Konferenz Ende März/Anfang April sowie der Xamarin-Konferenz "Evolve" (Ende April) bekannt geben. (Holger Schwichtenberg) / (ane)