ASP.NET 5 devient ASP.NET Core 1 et .Net Core 5 est maintenant appelé .NET Core 1.0
Pour mieux se démarquer des anciens frameworks
Le 2016-01-23 03:37:25, par Olivier Famien, Chroniqueur Actualités
Dans le but d’offrir une plateforme .Net plus unifiée, Microsoft a mis en œuvre depuis quelques années .Net Core, l’implémentation open source de son Framework .Net. Pour rappel, .Net Core se présente comme un assemblage modulaire de composants initialement disponibles dans le Framework .Net. Il a été rendu open source depuis 2014 afin d’ouvrir ses ressources à d'autres plateformes.
Lorsque vous installez le Framework .Net Core, vous disposez non seulement des runtimes CoreRT et CoreCLR, mais également des bibliothèques de classe CoreFX et BCL (Base Class Library) ainsi que du compilateur Roslyn qui peut être utilisé en tant que service et bien d’autres composants.
CoreRT est l’environnement d’exécution de .Net Core utilisé pour les tâches faisant appel à la compilation native. Il a été conçu pour les besoins de performances des applications Windows universelles. Généralement, pour une même application écrite avec les langages C#, Visual Basic et C++, l’implémentation C++ bénéficiera d’une vitesse d’exécution beaucoup plus substantielle si les codes des autres langages ne sont pas également compilés en code natif.
Aussi, pour obtenir de meilleures performances pour les applications Windows universelles écrites dans tous les langages .Net, Microsoft a conçu l’outil .Net Native pour compiler en code natif le bytecode des applications Windows universelles afin de l’exécuter directement par le processeur.
Un avantage non des moindres est que le code obtenu s’affranchit de la plateforme sur laquelle il est exécuté. Le code peut donc être porté sur un autre équipement Windows sans être obligé d’installer le runtime .Net.
À côté de CoreRT, nous avons CoreCLR qui est également une autre implémentation du runtime de .Net Core. Il est utilisé pour exécuter les applications web avec le framework ASP.NET 5. En novembre dernier, Microsoft a annoncé la disponibilité de .Net Core 5 et ASP.NET 5.
Depuis cette version, il est possible d’utiliser en production les applications web conçues avec ce framework web. Les applications et services peuvent être déployés aussi bien sur site que sur le cloud et cibler aisément les plateformes Windows, Linux et Mac OS X sans difficulté. Par ailleurs, vu que ces applications sont exécutées avec .Net Core, les projets ASP.NET 5 développés sur Windows peuvent être portés sur Linux et vice versa sans modification de code.
Cela constitue une grande avancée dans le projet de faire tourner les applications .Net sur les autres systèmes d’exploitation en utilisant une base de code unique. Toutefois, il se trouve que pour Microsoft, utiliser le nom ASP.NET 5 pour décrire cette nouvelle branche du framework web pourrait apparaitre comme une version supérieure d’ASP.NET 4.5 avec les mêmes fonctionnalités améliorées, ce qui n’est pas le cas.
ASP.NET 5 a été entièrement réécrit et est basé sur le Framework .Net Core 5 utilisé pour développer et exécuter aussi bien les applications Windows universelles et les applications web sur Windows, Linux et Mac OS X.
Par ailleurs, Microsoft souligne qu’en utilisant le nom .Net Core 5 pour faire référence au fork du Framework .Net, cela pourrait également être considéré comme une version supérieure de la même branche du Framework .Net 4.6, alors que ce dernier est uniquement utilisé pour concevoir les applications de bureau Windows.
Pour éviter donc ces confusions et repartir de zéro, Microsoft annonce qu’ASP.NET 5 est dorénavant appelé ASP.NET Core 1.0 et .NET Core 5 est maintenant appelé .NET Core 1.0. Par ailleurs, Entity Framework qui est à sa septième version a été rebaptisé Entity Framework Core 1.0.
Nous rappelons qu’Entity Framework est un ensemble d’outils utilisés pour accéder aux données dans les applications sans avoir besoin d’écrire le code d’accès aux données. Depuis la version 7, il a été entièrement repensé pour « une plus grande souplesse d’utilisation » avec une réduction drastique de son empreinte mémoire pour une utilisation multiplateforme.
Pour ce qui concerne le Framework .Net 4.6, Microsoft rassure qu’il continuera à évoluer parallèlement à .Net Core 1.
Source : Blog Microsoft
Et vous ?
Que pensez-vous de ce changement ? Microsoft aurait-elle dû laisser en l’état le nom de ces outils ?
Ou plutôt trouvez-vous pertinent le renommage de ces frameworks ?
Voir aussi
Forum Général .Net
Lorsque vous installez le Framework .Net Core, vous disposez non seulement des runtimes CoreRT et CoreCLR, mais également des bibliothèques de classe CoreFX et BCL (Base Class Library) ainsi que du compilateur Roslyn qui peut être utilisé en tant que service et bien d’autres composants.
CoreRT est l’environnement d’exécution de .Net Core utilisé pour les tâches faisant appel à la compilation native. Il a été conçu pour les besoins de performances des applications Windows universelles. Généralement, pour une même application écrite avec les langages C#, Visual Basic et C++, l’implémentation C++ bénéficiera d’une vitesse d’exécution beaucoup plus substantielle si les codes des autres langages ne sont pas également compilés en code natif.
Aussi, pour obtenir de meilleures performances pour les applications Windows universelles écrites dans tous les langages .Net, Microsoft a conçu l’outil .Net Native pour compiler en code natif le bytecode des applications Windows universelles afin de l’exécuter directement par le processeur.
Un avantage non des moindres est que le code obtenu s’affranchit de la plateforme sur laquelle il est exécuté. Le code peut donc être porté sur un autre équipement Windows sans être obligé d’installer le runtime .Net.
À côté de CoreRT, nous avons CoreCLR qui est également une autre implémentation du runtime de .Net Core. Il est utilisé pour exécuter les applications web avec le framework ASP.NET 5. En novembre dernier, Microsoft a annoncé la disponibilité de .Net Core 5 et ASP.NET 5.
Depuis cette version, il est possible d’utiliser en production les applications web conçues avec ce framework web. Les applications et services peuvent être déployés aussi bien sur site que sur le cloud et cibler aisément les plateformes Windows, Linux et Mac OS X sans difficulté. Par ailleurs, vu que ces applications sont exécutées avec .Net Core, les projets ASP.NET 5 développés sur Windows peuvent être portés sur Linux et vice versa sans modification de code.
Cela constitue une grande avancée dans le projet de faire tourner les applications .Net sur les autres systèmes d’exploitation en utilisant une base de code unique. Toutefois, il se trouve que pour Microsoft, utiliser le nom ASP.NET 5 pour décrire cette nouvelle branche du framework web pourrait apparaitre comme une version supérieure d’ASP.NET 4.5 avec les mêmes fonctionnalités améliorées, ce qui n’est pas le cas.
ASP.NET 5 a été entièrement réécrit et est basé sur le Framework .Net Core 5 utilisé pour développer et exécuter aussi bien les applications Windows universelles et les applications web sur Windows, Linux et Mac OS X.
Par ailleurs, Microsoft souligne qu’en utilisant le nom .Net Core 5 pour faire référence au fork du Framework .Net, cela pourrait également être considéré comme une version supérieure de la même branche du Framework .Net 4.6, alors que ce dernier est uniquement utilisé pour concevoir les applications de bureau Windows.
Pour éviter donc ces confusions et repartir de zéro, Microsoft annonce qu’ASP.NET 5 est dorénavant appelé ASP.NET Core 1.0 et .NET Core 5 est maintenant appelé .NET Core 1.0. Par ailleurs, Entity Framework qui est à sa septième version a été rebaptisé Entity Framework Core 1.0.
Nous rappelons qu’Entity Framework est un ensemble d’outils utilisés pour accéder aux données dans les applications sans avoir besoin d’écrire le code d’accès aux données. Depuis la version 7, il a été entièrement repensé pour « une plus grande souplesse d’utilisation » avec une réduction drastique de son empreinte mémoire pour une utilisation multiplateforme.
Pour ce qui concerne le Framework .Net 4.6, Microsoft rassure qu’il continuera à évoluer parallèlement à .Net Core 1.
Source : Blog Microsoft
Et vous ?
Voir aussi
-
JiyuuRédacteur/ModérateurÇa aussi c'est le genre d'infos qui m'intrigue... je suis loin d'être un grand fan de Microsoft mais je suis très curieux. Perso je ne m'aviserai pas de faire ce type de remarque ne connaissant absolument pas le produit. Du coup je suis certain que toi tu le connais très bien pour avoir un tel jugement ?
Mais en ce qui me concerne, je ne pense pas que juger l'instabilité d'un produit, langage, framework ou tout autre chose sur le simple fait qu'il soit régulièrement modifié (d'ailleurs on parle de quelle grosse modif là ???). Qt, Python, Django, ... sont continuellement mis à jour et je trouve cela plutôt rassurant.
Je suis le seul ???le 28/01/2016 à 15:20 -
tomlevRédacteur/ModérateurOn peut sans doute trouver beaucoup de choses à redire sur le framework .NET, mais l'instabilité n'en fait pas partie... Ça fait presque 15 ans que je l'utilise, et je n'ai que très rarement été confronté à un bug qui ne venait pas de mon code ou d'une lib tierce.
.NET Core est une refonte complète du framework pour le rendre modulaire et multi-plateforme... je pense qu'on peut effectivement parler d'une "grosse modif"
Par contre le framework .NET "classique" (monolithique et compatible seulement avec Windows) continue à exister en parallèle, et continuera probablement à être maintenu pendant encore pas mal d'années. De ce côté là, pas de modifs radicales, juste de petites évolutions par-ci par-là.
Non, je suis tout à fait d'accordle 29/01/2016 à 0:45 -
AesonNouveau Candidat au Clubmais seuls les employes de microsoft peuvent contribuer au tronc.le 22/07/2016 à 16:07
-
DonQuicheExpert confirméUn jour j'aimerais que les éditeurs se rendent compte que personne ne comprend plus rien à leurs noms de code en pagaille et leurs changements incessants de versionnage. Tant que l'on reste le nez collé dans une techno tout va bien, mais dès qu'il faut aborder une nouvelle techno ou revenir sur une ancienne, cet empilement de noms incohérents est une horreur.
J'ai pris l'expression "nom de code" en grippe.le 23/01/2016 à 7:26 -
ExcellionMembre avertiJe développe en asp.net avec VS pro. Évidemment sous Windows, car il n'y a pas d'alternative.
Par curiosité, j'ai installé tous les trucs core. Déjà sous Solaris, j'ai directement eu le droit à des erreurs de compilations, et des bibliothèques manquantes à foison.
Donc Ubuntu. Et bien... C'est succin (le moins que l'on puisse dire), et en fait, cela ne s'intègre même pas avec par exemple TFS, alors qu'avec GIT, si. Et au niveau finition, l'éditeur de mono semble largement mieux.
Bref, pour Microsoft, y'a un gros boulot pour que leur version Core soit exploitable comme ils le prétendent.le 23/01/2016 à 7:45 -
ValCapriMembre habituéLe renommage aurait du être fait au début, pour bien montrer que Microsoft repartait de zéro et faisait enfin un vrai .Net multi-plateforme.
Comme dit Excellion, Microsoft n'est pas (encore) au niveau de Xamarin/Mono.
Pour moi, Visual Studio Code devrait permettre un développement multi-plateforme avec C# .Net/C++ et des bindings pour les GUI (comme le fait Mono).
Il serait aussi intéressant que Microsoft porte Hyper-V sur OS X et Linux, cela permettrait d'executer Windows 10 (Mobile) sur nos machines.
Cela renforcerait l'attrait vers Windows Bridge for iOS et permettrait son exécution complète (outils de développement, compilation, test) sur OS X.le 23/01/2016 à 12:49 -
tomlevRédacteur/ModérateurCe renommage est une bonne chose car le nom "ASP.NET 5" causait beaucoup de confusion. Dommage par contre qu'il arrive aussi tard...
Il ne faut pas oublier que c'est en cours de développement... Les plateformes supportées sont pour l'instant Windows, OS X et Linux, donc pas Solaris. Je suppose que ça pourra venir à terme, mais ce n'est probablement pas une priorité pour MS.
Ils n'ont pas encore prétendu que c'était exploitable... tout ça est nouveau et clairement pas encore fini. Patience
(et vouloir utiliser TFS sous Linux (ou même utiliser TFS tout court), quelle drôle d'idée... enfin bon, je suppose que c'est un peu subjectif ^^)le 23/01/2016 à 14:17 -
tomlevRédacteur/ModérateurDes applis web, principalement (ASP.NET est un framework pour les applis web). Tu peux aussi faire des applis console avec .NET Core. Pour les applis avec GUI desktop ou mobile, par contre, c'est pas encore pour tout de suite, vu qu'il n'existe pas encore de framework UI multiplateforme compatible avec .NET Core (mais ça m'étonnerait que Xamarin ne soit pas en train d'y travailler...)
Tu peux suivre les instructions ici pour installer les outils : https://docs.asp.net/en/latest/getti...-on-linux.html
Mais à ta place j'attendrais encore un petit peu ; il va y avoir pas mal de changements dans la release finale (prévue pour mars) et les instructions sur cette page seront obsolètes.
Comme éditeur, tu peux utiliser Visual Studio Code (qui n'a de Visual Studio que le nom) : https://code.visualstudio.com/
C'est pas aussi puissant qu'un vrai IDE comme VS ou Eclipse, mais le support de C# est très bon (autocomplétion, refactoring...)le 27/01/2016 à 17:05 -
beekeepRédacteur/ModérateurIl est déjà possible d'analyser la compatibilité de son code grâce à cette extension pour VS:
https://visualstudiogallery.msdn.microsoft.com/1177943e-cfb7-4822-a8a6-e56c7905292ble 29/01/2016 à 9:43 -
SaiRictusMembre régulierJ'ai démarré 2 projets avec les RC1 et RC2 de Net.Core et je dois dire que la passage à la version finale est relativement douloureux (en fait je ne suis pas arrivé).
Ca serait pas mal qu'ils nous mettent des infos là-dessus notamment concernant le tooling (DotNetWatch 1.0.0-preview2 n'est pas compatible avec la version 1.0 de netcoreapp1.0 par exemple).le 29/06/2016 à 9:31