Menü
Developer

Microsoft: .NET wird komplett Open Source

Microsoft wird den kompletten Quellcode seines .NET Framework für andere nutzbar machen und insbesondere Mono und Xamarin damit beflügeln.

Von
vorlesen Drucken Kommentare lesen 248 Beiträge
Microsoft Connect();: .NET wird komplett Open Source

Microsoft hat im Rahmen seiner Online-Konferenz connect(); am Mittwoch bekannt gegeben, dass das komplette .NET Framework zukünftig als Open-Source-Software unter der MIT-Lizenz stehen wird. Bisher hat die Entwicklungsplattform den Status "Shared Source". Das bedeutet, dass der komplette Quellcode einsehbar ist und auch im Rahmen des Debuggings in Visual Studio (verfügbar seit Visual Studio 2008) genutzt werden darf.

Die Shared-Source-Lizenz erlaubte aber die Veränderung des Quellcodes nur für eigene experimentelle Zwecke und nicht zur Verbreitung. Daher konnte die Firma Xamarin für die maßgeblich von ihr betriebene .NET-Implementierung Mono und die darauf aufbauenden Frameworks zur Cross-Plattform-App-Entwicklung bisher nicht auf den Microsoft-Quellcode zugreifen, sondern musste die .NET-Framework-Funktionen nachimplementieren und dabei genau auf die funktionale Äquivalenz achten.

Mit der heutigen Ankündigung erlaubt Microsoft nun, den Quellcode weiterzuverwenden – auch für kommerzielle Produkte. Der Quellcode steht unter Verwaltung der im Frühjahr gegründeten .NET Foundation. Microsoft will auf dieser Grundlage zukünftig mit Xamarin gemeinsam die Codebasis des neuen .NET Core Framework weiterentwickeln, also auch zunehmend Teile der monolithischen Implementierungen von .NET Framework 4.x und von Mono in das modulare .NET Core Framework überführen.

Die .NET-Nachimplementierung Mono wurde erstmals auf der O'Reilly-Konferenz im Juli 2001 angekündigt, damals noch als Open-Source-Projekt der Firma Ximian unter Leitung von Miguel de Icaza und Nat Friedman. Ximian wurde 2003 von Novell übernommen. Nach der Akquisition von Novell durch Attachmate gründete sich die Mono-Entwicklungsabteilung unter Führung von Friedman und de Icaza in die neue Firma Xamarin aus – in Anlehnung an den früheren Firmennamen.

Microsoft war dem Mono-Projekt stets wohlgesonnen. Nachdem der Konzern die Nachimplementierung seines .NET Framework anfangs nur tolerierte, gab es ab September 2007 eine aktive Zusammenarbeit im Rahmen des Projekts Moonlight, einer Implementierung von Microsofts Silverlight für andere Betriebssysteme. Öffentlich intensiviert wurde die Zusammenarbeit auf der BUILD-Konferenz im April 2014.

Auch Beiträge anderer Entwickler zu .NET sollen zukünftig möglich sein. Allerdings will Microsoft die Annahme von Pull-Requests auf das neue modulare .NET Core Framework 5.0 beschränken. Das traditionelle, rund 200 MByte schwere .NET Framework, dessen kommende Version 4.6 sein wird, eignet sich laut Microsoft nicht für die Beteiligung der Community, da es hier viele komplexe Abhängigkeiten vom Betriebssystem und zwischen den verschiedenen Bibliotheken gibt.

Für das .NET Core Framework will Microsoft weiterführen, was bereits mit ASP.NET 5.0 unter dem Codenamen "ASP.NET vNext" im Mai 2014 begonnen wurde: Der komplette Quellcode wird auf dem Dienst GitHub gehostet. Das selbst initiierte Quellcodeportal CodePlex soll hierfür nicht mehr verwendet werden, da GitHub eine höhere Akzeptanz in der Open-Source-Community hat. Jeder Interessierte kann Einblick in die Protokolle der Design-Meetings nehmen und Kommentare dazu abgeben. Die Aufgaben- und Bugliste ist ebenso öffentlich wie die komplette Versionsgeschichte.

Microsoft macht damit einen weiteren Schritt, eine Open-Source-Firma zu werden. Bereits im April 2014 hatte Microsoft die nächsten Versionen der Programmiersprachen C# (Version 6.0) und Visual Basic (Version 2015) sowie die zugehörige .NET-Compiler-Plattform "Roslyn" zum Open-Source-Projekt erklärt. Zu den Open-Source-Projekten gehören auch die Sprachen F# und TypeScript.

Während Open Source früher ein Zeichen war, dass Microsoft das Interesse an der Weiterentwicklung eines Projekts verloren hatte, hat der Konzern in den vergangenen Jahren schon an zahlreichen Beispielen gezeigt, dass er Open Source als Teil seiner kommerziellen Strategie betrachtet. Für Techniken wie das Webframework ASP.NET MVC und den objektrelationalen Mapper Entity Framework gilt schon länger eine Open-Source-Lizenz. Dennoch hat Microsoft hier die Projektführung behalten und stellt das Entwicklungsteam. Für die Beiträge aus der Community erfolgt eine Qualitätssicherung nach den gleichen Standards wie für Beiträge der Microsoft-Entwickler. Zudem bietet Microsoft vollen technischen Support für diese Projekte. Dieses Vorgehen einschließlich der Fortführung des Supports wird Microsoft nun auf das komplette .NET Framework übertragen.

Zu den auf der connect();-Konferenz angekündigten Neuerungen siehe auch auf heise Developer: