Microsoft : l’environnement .NET abandonne ses versions 5.0 pour Core 1.0
Reboot
Le 25 janvier 2016 à 07h30
4 min
Logiciel
Logiciel
Microsoft revoit actuellement l'organisation de plusieurs briques importantes de ses technologies de développement. Pour mieux représenter le nouveau départ sur certaines d’entre elles, l’appellation change et est affublée d’un « 1.0 » symbolique, à commencer par .NET Core.
La plateforme .NET de Microsoft est en plein renouvellement. L’un des changements majeurs est l’annonce de son passage en open source, tout du moins d’une grande majorité de ses composants. On savait ainsi que la prochaine mouture majeure de .NET Core devait être la 5.0, mais l’éditeur procède à une sorte de « redémarrage ». Il faudra donc parler désormais de .NET Core 1.0, un étrange retour en arrière sur la nomenclature.
Des briques réécrites, open source et multiplateformes
Ce changement est présenté par l’ingénieur Scott Hanselman. Il explique que la décision a été motivée par le fait qu’il ne s’agit pas seulement d’une évolution majeure, mais bien d’un concept différent. .NET Core 1.0 représente donc un nouveau départ et, bien qu’il puisse intéresser de nombreux développeurs (d’autant qu’il doit être disponible sur Linux, OS X et Windows), d’autres préfèreront rester sur l’actuelle version 4.6 du framework .NET, qui reste pour l’heure plus complet.
La même bascule se produit pour ASP.NET, la technologie dédiée à la création de pages web. Il n’est donc plus question d’ASP.NET 5.0, mais d’ASP.NET Core 1.0. Cette fois, Hanselman va plus loin en expliquant que le chiffre « 5 » donnait l’impression que la nouvelle version en faisait plus que la précédente. Or, dans l’état actuel des choses, ce n’est pas le cas. Comme pour .NET Core 1.0, il s’agit d’une réécriture complète, sur une base multiplateforme et open source (licence MIT).
Le futur « appartient » donc à ces nouvelles briques, mais il faudra encore un peu de temps avant que le champ fonctionnel soit au même niveau. Quant à Entity Framework 7, il passe également à la moulinette : Entity Framework Core 1.0, ou plus simplement EF Core 1.0.
Un renouveau incomplet
À la question « Lequel choisir ? », au sujet de la version d’ASP, l’ingénieur annonce la couleur : « Pour être clair, ASP.NET 4.6 est une plateforme plus mature. Elle a été largement testée, diffusée et est disponible aujourd’hui. ASP.NET Core 1.0 est bien une version 1.0 qui inclut Web API et MVC, mais pas encore SignalR ni les Web Pages. […] Que personne ne s’imagine qu’ASP.NET Core 1.0 est la fin du chemin. C’est un nouveau départ et un embranchement sur la route, mais ASP.NET 4.6 continue, est disponible et pleinement supporté ».
L’annonce et les précisions sont d’importance, car elles devraient aider les développeurs à se méfier : il n’y aura pas vraiment de transition simple depuis les versions 4.6. L’ensemble doit être considéré comme une nouvelle plateforme très clairement orientée vers la création et le déploiement de microservices et/ou centré sur le cloud, distant ou hybride. Mais il est en l’état incomplet, Hanselman citant par exemple l’incompatibilité actuelle des langages Visual Basic et F# : seul le C# est actuellement de la partie.
Un changement applaudi, mais pas dénué de reproches
Pour donner une idée de la complexité de la transition, il suffit d’ailleurs de lire les commentaires sur le billet d'annonce. Beaucoup applaudissent la décision, qui apporte effectivement une nouvelle lumière sur ce qui se trame chez le géant. D’autres pointent les problèmes rencontrés, comme « Neville », qui indique que la migration de son projet ASP.NET 4.5 vers Core 1.0 s’est très mal passée, plus rien ne fonctionnant.
D’autres reprochent à Microsoft d’avoir trop tardé à se décider : le développement des versions 5.0 est en route depuis si longtemps que de très nombreux sites parlent de cette version, au risque de créer la confusion. D’autres encore font remarquer à l’éditeur qu’il s’agissait précisément de ce que bon nombre de développeurs avaient réclamé au MVP Summit de novembre dernier. Enfin, « Jesper » fait remarquer que le nom même d’ASP devrait changer, tant la technologie n’a plus aucun lien avec ce qu’était Active Server Page à ses débuts.
Le nom même représente une vieille casserolle de Microsoft, alors que son fonctionnement actuel se rapproche davantage, selon lui, de Node HTTP ou de Rack. Et pour preuve que la confusion va encore durer un petit moment, le site officiel d'ASP.NET fait encore référence à la version 5.
Microsoft : l’environnement .NET abandonne ses versions 5.0 pour Core 1.0
-
Des briques réécrites, open source et multiplateformes
-
Un renouveau incomplet
-
Un changement applaudi, mais pas dénué de reproches
Commentaires (25)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 25/01/2016 à 07h45
.. Hm.. J’attends surtout des infos sur leurs couches clientes.. WPF par exemple :) Si ca migre dans Core 1.0 et devient multiplateforme…
Le 25/01/2016 à 07h54
Ils sont sur la bonne voie, mais ça va prendre du temps avant de se concrétiser pleinement tout ça! On verra bien comment ça se passe ^^
Le 25/01/2016 à 08h00
Je sais pas pourquoi mais ça sent déjà la merde rien qu’avec le versionning, je sens le Microsoft a 2 vitesses avec encore 5 ans / 2 versions en parallèle qui ne sont pas compatible. Pour au final sortir une abomination à trois têtes pour garder la compatibilité avec les vieux trucs. Maintenant la question on pourra faire du C# servit par apache bientôt.
Le 25/01/2016 à 08h09
Le 25/01/2016 à 08h30
Le 25/01/2016 à 08h34
Attention .NET 5.0 n’est pas abandonné. Il y a une confusion au niveau de l’article. Seuls Asp.Net 5.0 et Entity Framework ont été re-versionnés. L’ancien ASP.NET 5.0 est rebaptisé ASP.Net Core 1.0 et Entity Framework 7 en EF Core 1.0. Il va toujours avoir une version complète du framework .NET uniquement sur Windows. Et pour info il n’a jamais été question d’une version .NET Core 5.0…
Le 25/01/2016 à 08h56
Le 25/01/2016 à 09h07
et quand les màj .Net pour Windows 7 arrêteront de s’installer en boucle aussi " /> (fini par masquer ces trucs, plus de 30 fois en un mois fin 2015)
Le 25/01/2016 à 09h11
Hum, si le portage fout complètement en l’air les projets, on en verra pas de .NET Core 1.0 avant 2/3ans.
Ca va demander encore un peu de travail de leur part :)
Mais bonne nouvelle de se tourner vers l’open-source, et surtout le multi-platforme ! Je vais pouvoir rentabiliser mon expérience en .NET/C# plus facilement " /> Même mon bb sukr C++14⁄17 gagn dns mn keur.
Le 25/01/2016 à 09h49
Il est grand temps pour moi de m’orienter vers d’autres technologies.
J’ai le plus grand respect pour Microsft pour sa vision de départ.
Bien que leurs produits ne font pas l’unanimité et que leurs qualités soient critiquées. N’empeche que les produits comme Windows 95, Word et Excel ont révolutionné le monde. A côté de cela, ils ont de supers produits tels que Visual Studio, MS SQL Server et bien d’autres..
Maintenant que cela va dans tous les sens (dans le but de satisfaire le maximum de personnes)..
Bah je leur souhaite bonne chance…
Autant d’anticiper sur eux et d’aller sur l’open source et autres qui n’ont pas attendu 2016 pour exister. D’où ma démarche.
Le 25/01/2016 à 09h52
C’est surtout que Microsoft en a rien à faire de WPF. Il n’a pas évolué sur les 5 dernières années. Ceci dit, une bonne partie de WPF est déjà sur ReferenceSource : PresentationFramework / PresentationCore / WindowsBase.
Il manque donc le MILCore qui est la couche de rendu graphique. Mais cette technologie est tellement à la ramasse que j’en verrai très peu d’intérêt à la passer en open source.
Je préfèrerai que Microsoft se penche sur une refonte complète et open source des couches basses de WPF (se basant sur Dx 12 par exemple).
Le 25/01/2016 à 10h15
très complexe peu être, mais microsoft l’as déjà plus ou moins réalisé par le passé avec Silverlight qui tournait sous OSX et Windows.
D’ailleurs, déjà à l’époque ça s’appelais la CoreCLR.
Malgré tout, j’y crois pas que WPF soit porté, éventuellement le model d’app winRT2.0 sera porté histoire d’inciter encore plus les gens à développer sur cette plateforme.
Le 25/01/2016 à 10h23
Le 25/01/2016 à 10h34
Le 25/01/2016 à 11h11
Le but du .Net Core est de se passer d’un maximum de dépendances liées à l’installation du framework et du OS. On peut par exemple grâce à l’implémentation OWIN créer un exécutable qui s’“autohoste”. La finalité étant de faire exactement la même chose sur MacOSX et Linux et de s’affranchir de IIS!
Le 25/01/2016 à 11h21
Ca m’interesse hautement. Actuellement je code un backend REST en Node.js/TypeScript et Sequelize/Bookshelf/Knex pour communiquer avec Postgres.
Et ben les ORM SQL en JS c’est vraiment pas ca : Sequelize est pas terrible, la doc est pourrie et Bookshelf/Knex n’est plus vraiment maintenu. Ne parlons meme pas de Sails et son ORM.
Bref je regrette Entity Framework. ASP.NET MVC : ca fonctionne bien, le code est simple et lisible et C# est un bon langage. Tant pis pour l’utilisation d’un seul langage, partage de code, un seul package manager…
J’ai fait bcp de Rails, c’est tres bien mais le fait de ne pas avoir de typage est genant.
Bref pour moi ASP.NET MVC multiplateforme serait la solution la moins pire.
Le 25/01/2016 à 12h04
et est ce que ces changements vont avoir des conséquences sur Mono ?
Le 25/01/2016 à 12h19
Le 25/01/2016 à 13h04
C’est clair que quand j’entends “ASP” j’ai toujours un frisson qui me traverse tout le corps. Très très mauvais souvenirs, à tel point que je ne veux pas savoir ce que c’est devenu aujourd’hui.
Le 25/01/2016 à 13h55
Le fric qui doit être englouti par les reboots et l’unification des Windows. Tu m’étonnes que Microsoft passe à la trappe le legacy et force tout le monde sur Win10… Le plan est super risqué et ne fonctionnera que si la nouvelle base devient très très rapidement l’unique base.
Le 25/01/2016 à 17h41
Rarement lu un article “technique” aussi mal ficelé et trompeur!
Peut-être faudrait-il commencer par rappeler que les outils de développement “Core” existent déjà et correspondent à Windows 10 “Core”, aussi appelé “Universal”.
Il est bien évident que tout ce qui existe dans .Net 4.0 où 4.6 NE PEUT PAS exister dans Core 1.0, pour la simple et bonne raison qu’une application Windows Universal doit pouvoir s’exécuter sur n’importe quelle machine capable de faire tourner Windows 10 Core, ce qui va du Raspbery Pi 2, au téléphone, en passant par les tablettes et les ordi de bureau.
Il n’y a AUCUNE raison de se préoccuper de Core 1.0 si l’on ne développe pas une application “universelle”. Là où l’article n’a pas de sens, c’est déjà dans le titre! MS n’abandonne pas .Net 5.0, tout simplement parce qu’il n’existe pas! MS RENOMME asp.net CORE 5.0 en Core 1.0. C’est pas vraiment la même chose!
Quant à la question de RolTom portant sur WPF, oui, WPF est bien porté dans Core, et on peut déjà développer des applications universelles, avec WPF et MVVM si on veut, pour un Raspberry Pi.
Mais pour ça, peut-être faut-il suivre l’actualité un peu plus “en direct”….!
Au fait, et pour en revenir a l’article, petit détail omis par le journaliste: Scott ne parle PAS DU TOUT DE .NET, mais exclusivement de ASP.NET. The devil is in the details…..
Le 25/01/2016 à 17h52
Pour tous ceux qui se posent des questions concernant WPF, peut-être que la lecture de ce papier pourra vous aider: http://mrpfister.com/programming/porting-wpf-applications-to-windows-universal-a…
Le 25/01/2016 à 18h06
Bon sinon c’est très clair.
On ne se perd pas du tout entre les différents sigles, tout est cohérent.
Communication made in MS, fantastique et si explicite as usual.
Le 25/01/2016 à 18h08
Rarement vu un commentaire aussi trompeur " />
Le 25/01/2016 à 23h54