.NET et le cross-platform, comment ça marche ?

Mickaël Mutte
norsys-octogone
Published in
3 min readJul 5, 2023

Depuis quelques années, Microsoft a transformé son environnement de développement .NET afin d’initier un virage vers l’open source et le cross-platform. Mais concrètement, qu’est-ce que cela signifie ?

Développer sur MacOs et Linux

Tout d’abord, afin de travailler sous environnement Linux ou MacOs, différents IDE sont désormais disponibles, on notera notamment les 3 principaux :

  • Visual Studio Code : est-il encore nécessaire de le présenter ? Disponible depuis plusieurs années et gratuit, VS Code est un éditeur multi-langages largement adopté par les développeurs de tout horizon. Sa force repose principalement par un nombre très important de plugins, lui permettant de faire presque tout ce que souhaitent les développeurs, quelque soit le langage choisi.
  • Rider : il s’agit de l’IDE de JetBrains spécialement conçu pour le développement .NET. Là encore, est-il nécessaire de présenter cette entreprise qui propose certains des IDE professionnels les plus connus ? A ce titre, Rider possède des nombreuses années d’expertise de l’éditeur en .NET, notamment via leurs travaux sur l’extension Resharper pour Visual Studio. Rider constitue donc une excellente alternative à l’IDE historique en .NET de Microsoft, Visual Studio.
  • Visual Studio : initialement disponible uniquement sur Windows, Microsoft a porté son IDE sur MacOs depuis quelques années (mais pas sur Linux). Cependant, cette version n’égale pas encore la version de Windows : des fonctionnalités sont manquantes et de nombreuses extensions de la version Windows n’ont pas d’équivalent sur MacOs. Ce retard en fonctionnalités diminue au fil du temps, Microsoft étant en train de porter les fonctionnalités manquantes progressivement.

Ils existent également d’autres IDE, mais les 3 cités ci-dessus sont de loin les plus connus et les plus utilisés pour faire du .NET en environnement cross-platform.

Selon votre choix d’IDE, il vous faudra installer manuellement les dépendances .NET, notamment les SDK. C’est le cas si vous développez avec VS Code. Sinon, vous êtes prêt à coder !

.NET Framework, .NET Core, .NET 5 et supérieur

Lorsque l’environnement .NET fonctionnait uniquement sur Windows, on parlait de .NET Framework. Lorsque Microsoft a amorcé son virage vers l’open source et le cross-platform, afin de distinguer cette évolution de la version traditionnelle propre à Windows, Microsoft a appelé cette nouvelle version .NET Core.

.NET Core a été pensé dès le début pour être cross-platform, cependant toutes les API de .NET Framework n’ont pas été reprises. Certaines ont été abandonnées car devenues obsolètes, d’autres ont été modernisées, et d’autres portées à l’identique.

Cette transition d’un environnement propriétaire à un environnement open source et cross-platform a pris quelques années et ne s’est pas faite sans douleur : le fait d’avoir deux noms différents pour la “même” technologie a apporté de la confusion dans l’esprit des développeurs et autre personnes gravitant autour de l’univers du développement .NET (chef de projet, commerciaux, etc.).

De ce fait, lorsque Microsoft a terminé l’évolution de sa plateforme de développement, les termes .NET Framework et .NET Core ont disparu afin de ne laisser place uniquement à .NET. En effet, depuis novembre 2020, Microsoft a officiellement fini de rendre la plateforme .NET cross-platform, avec l’annonce de la sortie de .NET 5 pour succéder à .NET Core 3.1.

A ce jour, en juin 2023, .NET arrive à sa version 8 en phase de preview.

Liens utiles

--

--