.NET et Windows : Microsoft prononce la fin de l’exclusivité
En versant le code de la stack serveur de .NET à l'Open Source, Microsoft découple officiellement son framework de la plate-forme Windows et l’ouvre à Linux et Mac OS X.
Découpler .NET de l’environnement Windows. En décidant de placer dans l’Open Source le coeur de son framework .NET, Microsoft a entrepris de modifier le modèle historique sur lequel le groupe de Redmond a bâti toute sa stratégie : celle d’un environnement de développement associé à une plate-forme. Désormais avec .NET, les développeurs pourront non seulement créer des applications pour Windows, mais également pour Linux et MacOS, deux environnements vers lesquels Microsoft entend officiellement porter son framework. Fin d’une époque, une page se tourne.
Comme Sun avait pu le faire avec Java, Microsoft a hier fait une grande promesse d’ouverture de ses technologies. Le groupe, poussé par des contraintes d’interopérabilité de plus en forte avec les systèmes coeur Open Source qui rythment l’IT moderne - Cloud, Big Data, notamment - a décidé de libérer les technologies qu’il baptise .NET Core, à savoir le runtime, l’élément de base qui permet d’exécuter les applications .NET. Sont notamment concernés .NET CLR, le Just-In-Time Compiler (JIT), le Garbage Collector (GC), ainsi que des bibliothèques de base et les frameworks de plus haut niveau web, data et API, précise Jakob Harttung, directeur du Pôle Stratégie Plateforme et Evangélisme Technique de Microsoft France, dans un email envoyé à la rédaction. En revanche, seuls les composants serveurs sont aujourd’hui concernés par cette ouverture. Les modules clients comme WPF et Windows Forms, spécifiques à la plateforme Windows, ne font pas partie de cette mise à l’Open Source.
Un Conseil consultatif à la .NET Foundation
La communauté étant désormais le maillon indispensable à l’évolution du framework, la .NET Foundation a entrepris de faire évoluer son modèle de gouvernance et annonce la création d’un Conseil consultatif. Il siègera aux côtés du Conseil d’administration. Il veillera à l’implication de la communauté et s’assura qu’elle soit « informée des décisions sur les orientations futures ainsi que sur l’état de santé de l’écosystème .NET », explique la Foundation sur son site. De 24 à sa création, la fondation héberge aujourd’hui 30 projets.
Une gouvernance assurée par la .NET Foundation
En libérant ses technologies coeur sous une licence MIT, Microsoft poursuit une stratégie déjà initiée avec la mise à l’Open Source en avril dernier des technologies ASP.NET, mais surtout de son compilateur Roselyn.
Comme ces derniers composants, explique Jakob Harttung, la stack serveur .NET sera placée sous la gouvernance de la .NET Foundation, une fondation à l’Américaine qui avait amorcé le virage de l’ouverture du framework. Cette institution (voir encadré) compte aujourd’hui une trentaine de projets .NET, libérés par Microsoft, auxquels peuvent avoir accès la communauté de développeurs.
Outre cette fondation, il convient également de rappeler les avancées de Microsoft vers le monde de l’Open Source et de Linux, autrefois considéré comme un ennemi et comparé à un cancer par Steve Ballmer lui-même. Les liens sont aujourd’hui plus détendus, avec d’une part la création d’une entité dédiée, baptisée Open Technologies, ou encore celle de la CodePlex Foundation - désormais OuterCurve - , mais surtout par ses travaux autour de Linux sur Azure. A ce titre, explique Jakob Harttung, ces efforts autour de .NET représentent « l’équivalent du support des environnements Linux et open source que nous annonçons sur Azure depuis quelque temps ».
« Cette annonce est une nouvelle étape dans la démarche Open Source de Microsoft. Elle facilitera la collaboration avec la communauté pour l’évolution et l’optimisation de .NET et d’outils complémentaires, notamment dans le cadre du support multi-plateforme (que ce soit côté client ou côté cloud). Pour les développeurs .NET, nous ouvrons de nouvelles opportunités leur permettant de cibler des plateformes additionnelles. Pour des utilisateurs de technologies non-Microsoft, nous leur ouvrons la possibilité d’utiliser toute la puissance de .NET et de Visual Studio », poursuit-il.
Cette ouverture de Microsoft semble avoir été accueillie favorablement par la communauté de l’Open Source; A commencer par Jim Zemlin, le patron de la Linux Foundation pour qui cette annonce de Redmond illustre une omniprésence de Linux dans l’IT. « Microsoft est en train de se réinventer en réaction à un monde dirigé par les logiciels Open Source et le développement collaboratif et démontre son engagement envers les développeurs via de nombreux moyens comme l’annonce autour de .NET ce jour », explique-t-il. Ajoutant plus loin : « Nous ne sommes pas en accord avec tout ce que fait Microsoft et nombre de projets Open Source sont des concurrents directs de produits Microsoft. Toutefois, le nouveau Microsoft que nous voyons aujourd’hui est assurément une entreprise différente vis-à-vis de l’Open Source. »
Finis les décalages entre Mono et .NET
On peut toutefois noter que les développeurs .NET pouvaient déjà faire tourner du code .NET sur d’autres environnements que Windows, grâce notamment à Mono, une implémentation Open Source du framework développée notamment par Miguel de Icaza, depuis les labos de Novell - Miguel de Icaza a fortement contribué à l’ouverture de .NET Core et à son utilisation prochaine sur Linux et MacOS. Cette "ouverture" nécessitait toutefois d’entretenir deux bases de codes séparées. « La communauté Mono était obligé de ré-implémenter .NET car aucune implémentation Open Source n’existait », rappelle Immo Landwerth, un responsable de la technologie .NET sur un blog. « Les clients ont remonté de nombreux décalages, difficiles à combler car aucune des deux parties n’a accès au code de l’autre. Cela a aussi contribué à des travaux menés en doublon », explique-t-il. « La meilleure façon de bâtir une solution multi-plateformes est de développer une stack unique, et de façon collaborative. Et la meilleure façon de le faire est de la placer dans l’Open Source. »
Un Visual Studio Community Edition
Enfin, en ligne avec cette stratégie d’accroissement de la communauté de développeurs, Microsoft a également annoncé une version Community de Visual Studio 2013. Cette édition, gratuite pour les utilisateurs non-entreprise, vise à proposer une version complète de l’IDE pour faciliter l’accès aux technologies .NET et favoriser le développement d’applications à partir du framework dans un environnement multi-plateforme. Cette édition Community bénéficiera également des possibilités d’extensions de Visual Studio et pourra donc intégrer différents modules, comme Xamarin, mais aussi VS Gallery, Tools for Unity, Node.JS Tools for VS ou encore Web Essentials for VS. Des possibilités d’extensions qui n’existaient pas dans Visual Studio Express, une précédente version gratuite de l’IDE. « L’édition Community est une version complète pour développer efficacement des applications mobiles cross-plateforme et cloud. Ce sera la meilleure solution pour des développeurs non-entreprise », résume Jakob Harttung. Les éditions 2010 et 2013 de VS Express resteront néanmoins au catalogue Microsoft. Mais l’arrivée de cette édition Community devrait stopper l’évolution de VS Express, Microsoft ne prévoyant pas de produire une version 2015 du logiciel.