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.
- Dr. Holger Schwichtenberg
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.
Gemeinsame Codebasis mit Mono
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.
Community-Beteiligung fĂĽr das .NET Core Framework
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.
Plötzlich Open Source
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:
- Microsoft: .NET wird zur Cross-Entwicklungsplattform
- Microsoft: Visual Studio Community ersetzt Express-Editionen
(ane)