Microsoft .Net bientôt open source, et porté sur Linux et Mac
C'est une annonce majeure qui illustre la nouvelle stratégie de Microsoft vers plus d'ouverture. Dans le sillage de J2EE, la standardisation de .Net semble bien en marche.
Microsoft a annoncé hier le passage de l'ensemble du cœur de .Net (.Net Core) sous licence open source. L'éditeur a choisi la MIT License. Une licence qui est assez souple (de nature non copyleft) puisqu'elle permet d'inclure des modifications sous d'autres licences, y compris non libres. Trois composants .Net sont concernés : les librairies de classe du Framework .Net, les librairies du cœur du Framework .Net, mais aussi le compilateur de nouvelle génération .Net RyuJit.
"D'ici fin 2015, nous allons open sourcer l'ensemble de la partie serveur du cœur de .Net., de ASP.Net 5 au moteur d'exécution et au framework", confirme Immo Landwerth chez Microsoft. "Cela va permettre de porter .Net sur Linux et Mac OS X en plus de Windows", explique-t-il. Notons que d'ores et déjà certains composants de Core .Net sont ouverts (voir le dépôt GitHub). C'est d'ailleurs le cas des librairies de classe du Framework .Net.
Vers l'app universelle, à la fois côté terminaux et côté serveur
Comme Sun avec J2EE en son temps, Microsoft met le cap sur la standardisation .Net
Cette nouvelle initiative s'inscrit dans une démarche qui a été lancée en avril dernier. A l'occasion de la Build 2014, son événement annuel à destination des développeurs, Microsoft avait alors annoncé que le nouveau compilateur de .Net, alias Roselyn, était livré sous licence open source. Le groupe avait aussi inauguré une fondation (la .Net Foundation) pour orchestrer le nouveau projet, mais aussi y attirer des contributeurs externes. L'éditeur en a d'ailleurs mis un d'emblée en avant : Xamarin.
Connu pour avoir développé un fork open source de .Net dès 2009, Xamarin a bâti depuis 2012 une série d'outils pour développer en C# des applications pour Windows, mais aussi pour iOS et Android. C'est sur ce partenaire que Microsoft entend désormais s'appuyer pour décliner le cœur de .Net sur Linux et Mac.
Vers une standardisation de .Net
Derrière ce chantier se cache un objectif des plus stratégiques : rendre les langages du framework .Net (C#, VB, F# et surtout ASP.Net) portables d'un OS serveur à l'autre, comme les promoteurs de PHP ou Java l'ont fait en leur temps. Ainsi, Microsoft entend rendre ses applications "Windows" pas seulement universelles en termes de terminaux "clients" (avec une stratégie multiplateformes qui arrive dans l'IDE Visual Studio, vers Android et iOS), mais aussi universelles en termes d'OS "serveurs", et donc portables dans d'autres univers systèmes.
"Il n'y aura plus de fork open source de .Net basé sur la rétroingénierie avec un développement et un code différents, il n'y aura plus qu'un .Net", martèle-t-on déjà chez Microsoft. De là à affirmer que l'objectif est désormais de standardiser .Net, il n'y a qu'un pas. Avec la fondation .Net, Microsoft semble bel et bien en train de réaliser ce que Sun a réalisé au moment du lancement du Java Community Process, en vue de créer un J2EE et standardiser l'environnement Java.