Retour sur le framework ASP.NET Core


La team SFEIR Lille s’est de nouveau réunie pour une présentation du framework ASP.NET Core suivi d’un atelier sur la construction d’une application web. Cet événement a été l’occasion de faire découvrir le monde .NET à une population de développeurs Java.

Après avoir essuyé quelques trolls, la présentation a commencé par reprendre l’histoire d’ASP.NET pour comprendre les récents changements de stratégie.Par la suite, il y a eu la présentation du framework ASP.NET Core.

En effet, voici plus de 15 ans que cette plateforme connue pour être la propriété de Microsoft existe. Aujourd’hui, grand tournant dans son histoire : on nous annonce qu’elle est devenue open-source et cross-platform. Faire tourner du .NET sur un Mac ou un Linux, voilà qui devrait relancer l’attrait des développeurs open-source.

Ce changement de stratégie a commencé en 2014 avec la création de la .NET Foundation. Cette organisation compte aujourd’hui des représentants de Microsoft, GitHub, Xamarin, Unity, JetBrains, Samsung. Elle veille à l’ouverture de l’écosystème .NET et encadre les communautés de développeurs Open Source. La fondation héberge actuellement une quarantaine de projets.

 

net

https://www.dotnetfoundation.org/

 

 

Qu’est-ce que .NET en quelques mots ?

.NET est une plateforme de développement. On y trouve deux composants principaux:

  • Le Common Language Runtime (CLR)
  • La bibliothèque de classe du Framework .NET.

On peut comparer la CLR avec la Java Virtual Machine (JVM).

Il faut savoir que ASP.NET est distribué avec le framework .NET et permet la création d’application web fonctionnant avec le serveur IIS.

 

Pour fonctionner, le Framework .NET doit être installé sur une machine Windows. Les applications ne sont exécutées que sur Windows et seul Microsoft peut modifier et distribuer le Framework. Mais ça, c’était avant l’annonce de .NET Core !

.NET se libère et devient cross-plateforme

Depuis 2014, Microsoft libère les sources du cœur de .NET sur GitHub. Cette nouvelle implémentation de .NET a été rebaptisé .NET Core.

 

Cette version libre de .NET est utilisable sur des systèmes d’exploitation différents de Windows comme Linux et OS X et prend en charge des architectures de processeur différentes. Elle a été pensée pour être modulaire dans son architecture et la conception. Les bibliothèques sont distribuées via NuGet ce qui permet d’utiliser uniquement ce dont vous avez besoin. On parle aussi de modèle “pay-for-play”.

Dans .NET Core, les module clients comme WPF et Windows Forms, spécifiques à la plateforme Windows, ne font pas partie de cette mise à l’Open Source.

Pas d’inquiétude pour les projets qui utilisent la version propriétaire du .NET Framework. Cette version existe encore et continuera d’évoluer .

ASP.NET fait aussi partie des projets pris en charge par la .NET Foundation. Rebaptisé ASP.NET Core, il peut fonctionner avec le .NET Framework propriétaire ou avec le .NET Core plus léger.
L’inverse n’est pas possible. Les anciens projets ASP.NET ne fonctionnent qu’avec la version complète du framework .NET.

 

framework ASP.NET Core open source

 

Certains diront qu’il était déjà possible de faire tourner .NET sur Linux avec Mono. Où situer Mono dans ce schéma ?

Mono, supporté par la société Xamarin, est la première implémentation open source et multiplateforme de .NET. Elle peut être considérée comme un clone communautaire du .NET Framework. L’équipe du projet Mono s’est appuyée sur les normes .NET libres (notamment ECMA 335) publiées par Microsoft pour proposer une implémentation compatible.
Depuis quelques années, les plateformes mobiles sont la principale priorité de Mono alors que .NET Core accorde la priorité aux charges de travail cloud.

Une partie du code est commun entre ces trois versions de framework et des travaux sont actuellement en cours pour unifier toute cette stack autour d’une librairie commune. Il s’agit de la .NET Standard Library. Les frameworks vont évoluer pour intégrer un maximum de code en commun et faciliter la création de code portable.

 

framework ASP.NET Core open source

 

 

Installation et démarrage

Pour installer le framework .NET, rendez-vous sur la page officielle.

 

NB : Le site est riche en documentation avec des tutoriaux pour bien commencer https://docs.microsoft.com/en-us/aspnet/core/getting-started

 

Concernant l’éditeur, nous ne sommes plus limités à Visual Studio pour Windows. Pour cet atelier, nous avons choisi d’utiliser Visual Studio Code.

 

L’atelier

Le but est de manipuler un peu de C# pour construire rapidement une application web branchée sur une base MongoDB. Et à la fin, il est possible de tout composer dans Docker.

 

Pour ceux qui souhaitent creuser le sujet, n’hésitez pas à consulter le dépôt du projet. Vous pourrez vous faire une idée de la procédure de création d’une application web avec ASP.NET Core et avec des tests unitaires.

 

Conclusion

C’est une bonne surprise de voir Microsoft s’ouvrir à l’Open Source pour (re)conquérir les développeurs. Récemment, Google a rejoint la Fondation .NET. Une page vient de se tourner…

framework ASP.NET Core open source

 

 

Vous aimerez aussi...