AngularJS
Les développeurs dans le trouble au sujet de la version 2.0, quel va être l'avenir du framework JavaScript de Google ?
Le 2015-01-15 10:16:54, par Golgotha, Membre expert
AngularJS, les développeurs dans le trouble au sujet de la version 2.0
Depuis l'annonce à la conférence ng-europe, le 22 et 23 octobre à Paris des précisions sur la version 2 du framework AngularJS (lire également ceci), de nombreux développeurs s'interrogent.
En effet, cette annonce avait fait l'effet d'une bombe au sein des utilisateurs du célèbre framework AngularJS qui avait pourtant pris la tête de la course devant Backbone.js, Ember.js, Knockout.js, etc.
L'équipe d'angularJS avait annoncé entre autre qu'une rétro-compatibilité entre la version en cours de développement et la version actuelle n'était pas à l'ordre du jour, de plus, c'est pratiquement tout le concept d'AngularJS qui y est remis en cause, ce qui implique pas mal de chose :
Si vous aviez pris du temps pour faire des guides ou des tutoriels sur le version 1, accepter que ce temps et cette énergie n'ai pas été aussi utile que vous le pensiez.
Avec ce changement, Google prend le risque de voir toute sa communauté se diviser, alors qu'ils ont gagné sa confiance et une popularité tellement difficile à avoir lorsque l'on sait le nombre de frameworks qui sortent et ne voient jamais le succès. Certains se demandent déjà si la communauté va reprendre la version 1 et la maintenir, on verrait alors deux versions distinctes de AngularJS se mettre en place, d'autres ont déjà quitté le navire en apprenant la nouvelle puisqu'il y avaient investi beaucoup de temps.
Quelques commentaires en réaction sur le blog de Shawn Wildermuth qui titrait sont article "It Is Too Soon to Panic on AngularJS 2.0" (Il est trop tôt pour paniquer à propos de AngularJS 2.0).
Dirk, rassurant nous dit qu'il n'y a pas de problème selon lui, il suffit de garder la version 1 sur les projets qui fonctionnent, et de passer sur la nouvelle version sur de nouveau projet.
Envoyé par Dirk
Pour Khalid Abuhakmeh, Le message de Shawn est bien beau mais dans la réalité, il faut faire face aux réactions des hommes qui ont investis des millions dans des projets avec AngularJS et à qui ont dois malheureusement annoncer que leur investissement ne sert plus à rien.
Envoyé par Khalid Abuhakmeh
Justin Asmussen se demande si l'équipe d'AngularJS n'a pas été trop vite pour annoncer la version 2.
Envoyé par Justin Asmussen
D'autres, comme Kendrick, se demandent s'il ne serait pas mieux de changer de nom étant donné la trop grande différence entre les deux versions.
Envoyé par Kendrick
Pour finir il y a de nombreuses réactions violentes comme celle de Hawk. Pour lui, la réponse est évidente, il ne faut pas utiliser AngularJS, ni en version 1, ni en version 2. Il explique entre autre que les performances ne sont pas bonnes, et qu'il est plus raisonnable d'utiliser de plus petites librairies couplées entre elles, et conseille d'apprendre le JavaScript plutôt que AngularJS.
Envoyé par Hawk
Pour ma part, j'avais vu en AngularJS un vrai plus pour la communauté. Maintenant que cette annonce est faite, je m'interroge sérieusement sur l'utilité d'aller me former sur un technologie qui sera obsolète dans quelques temps, je vais donc surement attendre la prochaine version avant de m'y mettre, malheureusement...
Et vous ?
Que pensez-vous de la version 2.0 ?
Depuis l'annonce à la conférence ng-europe, le 22 et 23 octobre à Paris des précisions sur la version 2 du framework AngularJS (lire également ceci), de nombreux développeurs s'interrogent.
En effet, cette annonce avait fait l'effet d'une bombe au sein des utilisateurs du célèbre framework AngularJS qui avait pourtant pris la tête de la course devant Backbone.js, Ember.js, Knockout.js, etc.
L'équipe d'angularJS avait annoncé entre autre qu'une rétro-compatibilité entre la version en cours de développement et la version actuelle n'était pas à l'ordre du jour, de plus, c'est pratiquement tout le concept d'AngularJS qui y est remis en cause, ce qui implique pas mal de chose :
- Ré-investir du temps pour ré-apprendre les nouveaux concepts/langages liés à la version 2.
- Ré-investir du temps pour re-développer des applications faite avec la version 1.
- Expliquer à vos supérieurs que la version 1 n'est plus compatible avec la version 2.
Si vous aviez pris du temps pour faire des guides ou des tutoriels sur le version 1, accepter que ce temps et cette énergie n'ai pas été aussi utile que vous le pensiez.
Avec ce changement, Google prend le risque de voir toute sa communauté se diviser, alors qu'ils ont gagné sa confiance et une popularité tellement difficile à avoir lorsque l'on sait le nombre de frameworks qui sortent et ne voient jamais le succès. Certains se demandent déjà si la communauté va reprendre la version 1 et la maintenir, on verrait alors deux versions distinctes de AngularJS se mettre en place, d'autres ont déjà quitté le navire en apprenant la nouvelle puisqu'il y avaient investi beaucoup de temps.
Quelques commentaires en réaction sur le blog de Shawn Wildermuth qui titrait sont article "It Is Too Soon to Panic on AngularJS 2.0" (Il est trop tôt pour paniquer à propos de AngularJS 2.0).
Dirk, rassurant nous dit qu'il n'y a pas de problème selon lui, il suffit de garder la version 1 sur les projets qui fonctionnent, et de passer sur la nouvelle version sur de nouveau projet.
Pour Khalid Abuhakmeh, Le message de Shawn est bien beau mais dans la réalité, il faut faire face aux réactions des hommes qui ont investis des millions dans des projets avec AngularJS et à qui ont dois malheureusement annoncer que leur investissement ne sert plus à rien.
Justin Asmussen se demande si l'équipe d'AngularJS n'a pas été trop vite pour annoncer la version 2.
D'autres, comme Kendrick, se demandent s'il ne serait pas mieux de changer de nom étant donné la trop grande différence entre les deux versions.
Pour finir il y a de nombreuses réactions violentes comme celle de Hawk. Pour lui, la réponse est évidente, il ne faut pas utiliser AngularJS, ni en version 1, ni en version 2. Il explique entre autre que les performances ne sont pas bonnes, et qu'il est plus raisonnable d'utiliser de plus petites librairies couplées entre elles, et conseille d'apprendre le JavaScript plutôt que AngularJS.
Pour ma part, j'avais vu en AngularJS un vrai plus pour la communauté. Maintenant que cette annonce est faite, je m'interroge sérieusement sur l'utilité d'aller me former sur un technologie qui sera obsolète dans quelques temps, je vais donc surement attendre la prochaine version avant de m'y mettre, malheureusement...
Et vous ?
-
SylvainPVRédacteur/ModérateurAngular 1.x m'a toujours paru comme une version preuve de concept de ce qu'aurait dû être réellement Angular. Beaucoup des mécanismes au coeur du framework doivent être repensés intégralement, tels que l'injection de dépendances, le $scope ou le dirty checking. Je dirais même que plusieurs de ces mécanismes doivent tout simplement disparaître car ils ne sont plus pertinents. Cette remise à plat qu'est la version 2.0 est donc nécessaire, avec comme objectifs :
- modularisation du code, builds personnalisés
- simplification des concepts, l'ensemble étant bien trop compliqué : https://docs.angularjs.org/guide/concepts
- réécriture en ES6 avec une version transpilée ES5 pour les vieux navigateurs
- remplacement de tous les mécanismes de dirty checking par des proxies
Toutefois, cette histoire d'AtScript a de quoi faire peur : c'est sorti de nulle part et l'intérêt d'une étape de transpilation est très discutable. Je pense que les développeurs Dart ont aussi beaucoup de mal à digérer ça. En admettant que ce choix est vraiment justifié, ils se sont quand même bien plantés dans la communication.
La bonne nouvelle dans tout ça est que ça va permettre à Angular de descendre de son piédestal pour mettre en lumière ses plus gros défauts ; et peut-être inciter les développeurs à s'intéresser à des solutions alternatives qui font tout aussi bien, même quand on a pas le tampon Google.le 15/01/2015 à 11:56 -
Traroth2Membre éméritePour deviner quel sera l'avenir d'Angular, il suffit de regarder ce que sont devenus les projets précédents de Google en matière de développement logiciel, comme GWT, Go ou Dart. Je pense que Go ou Dart ont une composante "on voudrait que tout le monde utilise notre technologie parce que ça améliore notre prestige" que GWT ou Angular n'ont pas. Comme GWT, Angular est essentiellement un outil interne à Google auquel Google donne accès, mais qui évolue strictement en fonction des besoins de Google. Et comme GWT, tôt ou tard, Google va créer quelque chose de mieux et va l'abandonner. Oh, proprement, en créant une organisation pour le supporter ou en le refilant à une organisation existante. Mais ça passera de mode, et plutôt tôt que tard.le 15/01/2015 à 11:43
-
Marco46Expert éminent séniorC'est quoi le problème avec l'injection ?
Pour le reste, Angular reste un framework fabuleux, qui demande certes pas mal d'investissement en terme de formation mais qui offre une puissance fabuleuse (comme d'autres framework JS) et une excellente testabilité.
Le gap entre une application développée avec de simples librairies (jQuery, ...) et un framework js est tout simplement gigantesque. C'est comme passer du bloc note à un EDI.
Le commentaire de Hawk est d'une stupidité affligeante, probablement motivé par la colère.
Pour ma part je pense que Angular 1.x sera encore supporté d'une manière ou d'une autre pendant des années. Il apporte tellement au dev de webapp qu'il ne peut pas disparaitre comme ça malgré son jeune âge.
La v2 est encore à un stade embryonnaire et on aura rien de concret avant au moins un an.
Bref, ce drama est bien dommage mais si Angular a pris tant de place c'est tout simplement parce qu'il répond à une problématique concrète et le fait très bien.le 15/01/2015 à 12:25 -
polaroid62Membre habituéEt qu'adviendra -t-il d'Angular Dart ?le 16/01/2015 à 11:47
-
yopiyopMembre régulierle 16/01/2015 à 19:53
-
SylvainPVRédacteur/ModérateurMeteor et Angular ne sont pas comparables... Meteor est une solution fullstack tandis qu'Angular est juste un framework client MVC.le 25/01/2015 à 14:19
-
Luc1an0Membre confirméAu vue de la présentation de AngularJS 2.0, j'ai été assez désorienté. Après avoir passé pas mal de temps à bosser avec la v 1.x, j'avais trouvé, certes des axes d'améliorations, mais d'ordre plus général, une architecture vraiment bien pensée. Il y avait certes des choses à revoir, mais là, ils ont tout revu, ou presque.
J'aurai un peu la même opinion que l'auteur, à savoir la grande question de savoir si l'on souhaite passer du temps à apprendre une techno' qui, force est de constater, a 1 chance sur 2 d'être obsolète au bout de 12/18 mois.
Les gros projets peuvent prendre autant de temps, et les "utilisateurs" (= développeurs utilisant les frameworks mis à disposition) ont bien plus à faire que de passer du temps à apprendre de nouvelles technos qui changent presque radicalement d'une version majeure à une autre...
Un peu dommage.le 15/01/2015 à 13:23 -
SylvainPVRédacteur/ModérateurL'injection par analyse introspective du code des fonctions est sur le plan technique très astucieuse, j'en avais parlé ici, mais elle pose problème avec les minifieurs de code type uglify. Cela a obligé les développeurs à un rétropédalage avec une syntaxe un peu différente et beaucoup moins intéressante. Si on la compare avec d'autres solutions d'injection de dépendances (il y en a un paquet), elle ne rivalise pas en termes de fonctionnalités et de praticité. Donc je comprends parfaitement la décision de la team Angular de profiter de la 2.0 pour repenser ça de zéro.le 15/01/2015 à 13:49
-
guiveNouveau membre du ClubJe voulais m'y mettre, finallement je crois que ça va attendre.le 15/01/2015 à 14:49
-
bruneltouopiMembre confirméVoilà un problème qui devient de plus en plus récurrent avec la panoplie des frameworks qui sortent.
Quelques fois on a l'impression que le framework a été construit à la va vite pour résoudre les problèmes à un instant T et se faire une place dans le marché.je prends l'exemple d'un autre framework java comme PLAY je l'ai abandonné pour les mêmes raisons de la version 1 à 2 il y'a eu trop de divergences.
Désormais je préfère intégrer des outils sous une base solide d'un existant pour éviter des surprises comme la non mise à jour rapide,les forks,les régressions incompatibles.le 15/01/2015 à 15:30