IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Aurelia, successeur du framework Durandal: l'Angular killer ?


Sujet :

JavaScript

  1. #1
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut Aurelia, successeur du framework Durandal: l'Angular killer ?
    Aurelia : un sérieux concurrent à AngularJS ?
    Ce framework JavaScript MV* est le successeur du framework Durandal
    Nom : aurelia-logo-high-res.png
Affichages : 12687
Taille : 15,8 Ko

    Il y a quelques mois encore, Rob Eisenberg faisait partie de l'équipe de développement d'Angular. Il a ensuite décidé de la quitter pour travailler sur son propre framework au sein de sa startup Durandal. Le résultat est maintenant dévoilé en preview et porte le doux nom d'Aurelia. Son créateur le décrit comme un framework de la prochaine génération, successeur de Durandal, le framework qu'avait déjà créé la boîte du même nom. On ne pourra toutefois pas s'empêcher de le comparer à la future branche 2.0 d'AngularJS avec laquelle il partage beaucoup de fonctionnalités et d'ambitions communes.

    Aurelia est un framework JavaScript client de type MV* (Model, View, et ce que vous voulez pour relier les deux), gratuit et open-source, écrit avec les dernières spécifications EcmaScript 6 et 7 (noté ES6/7 et encore à l'étude, rappelons-le). Le code est transpilé en ES5 et des polyfills sont ajoutés afin de garantir son support sur tous les navigateurs modernes. Il s'accomode très bien avec TypeScript, CoffeeScript ou AtScript selon son auteur.

    Le framework ne nécessite pas de dépendances et s'avère très modulaire, décomposé en différents composants indépendants et relativement simples. Il est donc possible de n'utiliser qu'une partie du framework, parfois même en dehors du périmètre initial d'Aurelia (le module d'injection de dépendances sur un environnement Node.js par exemple).

    Parmi sa longue liste de fonctionnalités, on peut citer :
    • un data-binding adaptatif très complet, avec deux fallbacks possibles (Object.observe en ES6, getter/setters en ES5 ou dirty checking en dernier recours pour le reste des navigateurs) ;
    • une forte intégration des Web Components au sein des templates ;
    • une notion de "comportements liés" permettant d'étendre les fonctions d'éléments HTML existants ;
    • un routeur client avancé qui est une amélioration de celui de Durandal 2 ;
    • un mécanisme d'injection de dépendances combiné à l'utilisation des modules ES6 ;
    • de la génération à la volée de modèles, vues et contrôleurs en fonction de données reçues à l'exécution.



    Eisenberg insiste sur la vision à long terme de ce framework qui sera soutenu par l'équipe de Durandal et une communauté qu'il espère grandissante. Au vu des choix techniques ayant été faits, en particulier ES6/7, Aurelia devrait montrer tout son potentiel dans les cinq années à venir tout en restant fonctionnel et éprouvé sur les navigateurs plus anciens.

    Le site d'Aurelia.


    Et vous ?

    Que pensez-vous des choix faits par ce framework ?
    Pensez-vous que ce framework puisse concurrencer Angular ?
    Songez-vous à essayer Aurelia dans un futur projet ?
    One Web to rule them all

  2. #2
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Il y a beaucoup de facteur quant à l'adoption d'un framework

    Son accessibilité. s'il est diffusé de façon anecdotique il n'a quasi aucune chance de se diffuser.
    Sa maintenant et son évolution. il est nécessaire d'avoir une vision claire de la façon dont est organisé le support, même si celui-ci est purement volontaire et non pro.
    Son paradigme. il faut que le concept phare sur le quel est bâti le framwork soit clair.
    Son apport. il est important de comprendre comment il se situe par rapport à la concurrence. Paradigme original, même paradigme mais plus simple à utiliser, plus léger, plus rapide, plus efficace plus efficient ...

    etc...
    pour le moment c'est un de plus. mais rien ne le faire ressortir du lot.

    A+JYT

  3. #3
    Expert éminent
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2007
    Messages
    2 161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 2 161
    Points : 7 952
    Points
    7 952
    Par défaut
    Citation Envoyé par SylvainPV Voir le message
    Songez-vous à essayer Aurelia dans un futur projet ?
    Pas tout de suite, pour un projet pro en tout cas.
    Il y a un peu trop d'animation en ce moment autour d'Anglular et consort.
    Pour les projets pro, va falloir attendre de voir comment le tout évolue.
    Je garderai un œil dessus en veille techno.

    Pour un projet perso, pourquoi pas.
    Ca permettra une veille techno plus abouties car mise en pratique.

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Le rythme de sortie de nouveaux frameworks JS est toujours aussi soutenu. Donc c'est Aurelia, le framework de la semaine ?

  5. #5
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Intéressant mais je commence à calmer mon enthousiasme à force.
    J'ai aimé angularJS dès mes premiers essais, j'ai adoré Dart aussi. Nous étions plusieurs à penser que le prometteur AngularDart serait la suite logique. Et bien non! Google a annoncé à la surprise générale qu'il bossait sur un AngularJS 2.0 avec un nouveau langage, le AtScript. On a bien ressenti le coup de froid sur la mailing list d'AngularDart.

    Pourquoi ressortir ça? Parce que ça pose déjà pas mal de questions sur la direction que prendront les frameworks de la famille d'angular, alors que dire d'un nouveau venu? Visiblement les auteurs ont anticipé la critique sur la page d'accueil :

    Aurelia isn't just another framework. It's an official product of Durandal, Inc., a Delaware C-Corp dedicated to advancing rich web app development by creating powerful libraries, frameworks and tools.

    We have a long term vision.

    Aurelia is the first step in realizing that vision. We believe it's critical to start with a completely free, open source application framework. We want to enable anyone to build amazing apps for many years to come and to know that they are building on a platform that isn't just here today and gone tomorrow. We're investing heavily in both building and supporting Aurelia as well as creating additional offerings: open source, free and commerical. We're truly excited about what's in store!

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    @_skip : je pense que le problème est justement Google, dans le cas que tu cites. Google n'est pas un éditeur d'outils de développement. Il propose simplement des outils conçus pour l'entreprise elle-même. Et l'évolution desdits outils s'en ressent fortement. Après GWT, Dart, AngularJS et j'en oublie, les gens vont peut-être commencer à se méfier, cela dit...

  7. #7
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Citation Envoyé par Traroth2 Voir le message
    Google n'est pas un éditeur d'outils de développement. [...] après GWT, Dart, AngularJS
    C'est pas un peu contradictoire ? Les deux gros frameworks JS du moment sont Angular et React = Google et Facebook. S'il n'y avait pas le poids de ces entreprises, je doute que ces bibliothèques aient eu le même succès. C'est justement pour ça que Eisenberg met en avant son entreprise Durandal, autrement c'est là que les gens pourraient se méfier.
    One Web to rule them all

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Citation Envoyé par SylvainPV Voir le message
    C'est pas un peu contradictoire ? Les deux gros frameworks JS du moment sont Angular et React = Google et Facebook. S'il n'y avait pas le poids de ces entreprises, je doute que ces bibliothèques aient eu le même succès. C'est justement pour ça que Eisenberg met en avant son entreprise Durandal, autrement c'est là que les gens pourraient se méfier.
    Je ne vais pas préjuger de ce que va faire Facebook, mais concernant Google, manifestement, les outils proposés ne sont maintenus sérieusement que tant qu'ils ont une utilité pour la société et leur évolution suit strictement les besoins de Google, quitte à casser la compatibilité ascendante comme avec Angular 2.

    Donc, oui, le poids de Google a fait le succès de GWT ou Angular (pour Dart, le succès est plus mitigé), mais je ne suis pas certain que ceux qui ont déjà été victimes de embardées technologiques de Google s'y laissent reprendre une autre fois.

  9. #9
    Membre éclairé
    Avatar de Paleo
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2013
    Messages : 242
    Points : 661
    Points
    661
    Par défaut
    Merci pour cet article.

    La page Get Started insiste sur l'utilisation de ES6 et la compatibilité avec AtScript. Les choix de design paraissent être les mêmes que ceux de AngularJS : data binding, injection de dépendences pour Angular 1; puis ES6, AtScript et les Web components pour Angular 2. Les routeurs enfants proviennent du routeur de Durandal, lequel est une source d'inspiration pour le futur routeur de AngularJS 2.0.

    Notons que, contrairement à Angular 1, Aurelia n'insiste pas du tout sur les tests unitaires (en fait ils font carrément l'impasse dessus dans la doc).

    Dans les templates, les directives de Aurelia utilisent un format que je ne connaissais pas avec un point comme séparateur : "motclé1.motclé2" (exemple : "src.bind").

    La compatibilité visée est limitée aux navigateurs Evergreen :

    Aurelia targets Evergreen Browsers only. However, some of our early adopters have reported that things appear to be working even on IE9...

  10. #10
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Citation Envoyé par Tarh_ Voir le message
    Merci pour cet article.

    La page Get Started insiste sur l'utilisation de ES6 et la compatibilité avec AtScript. Les choix de design paraissent être les mêmes que ceux de AngularJS : data binding, injection de dépendences pour Angular 1; puis ES6, AtScript et les Web components pour Angular 2. Les routeurs enfants proviennent du routeur de Durandal, lequel est une source d'inspiration pour le futur routeur de AngularJS 2.0.
    J'ai moi aussi regardé, mais j'ai eu la flemme d'installer toute la stack pour accéder aux librairies (nodejs, npmjs, gulp et autres). Mais la proximité avec angular est très évidente.

    Par contre ça m'a paru particulièrement intéressant de faire du "router" un citoyen de première classe car j'ai pas eu l'impression que c'était suffisamment le cas dans angularjs, surtout si on a besoin de plusieurs niveaux. Enfin c'est peut être moi qui sait pas y faire, cependant s'ils commencent à reconsidérer cette partie pour angularjs 1.4/2.0 cest peut être bien qu'il y a un souci.

    Pour ce qui est de la politique de google ben, les projets sont open source, après on voit ce que ça fait quand un gros sponsors prend ses distances avec un projet. Sans refaire le débat sur proprio vs open source, c'est une problématique qui se pose dans les 2 situations.

  11. #11
    Membre éprouvé

    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 506
    Points : 1 289
    Points
    1 289
    Par défaut Comparaison
    Faut aussi comparer ce qui est comparable... Mieux qu'Angular? Oui sans doute mais Angular a été conçu il y a 5 ans et jusque la version 1.2.28 (sortie il y a deux mois) fonctionne sur IE8.
    Donc oui ce n'est pas aussi moderne qu'Aurelia mais ce la fonctionne ... aujourd'hui et pas demain!

  12. #12
    Membre éprouvé

    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 506
    Points : 1 289
    Points
    1 289
    Par défaut
    Citation Envoyé par Traroth2 Voir le message
    Je ne vais pas préjuger de ce que va faire Facebook, mais concernant Google, manifestement, les outils proposés ne sont maintenus sérieusement que tant qu'ils ont une utilité pour la société et leur évolution suit strictement les besoins de Google, quitte à casser la compatibilité ascendante comme avec Angular 2.
    Ah une société commerciale ne travaille que sur ce dont elle a besoin.. ben oui forcément! Mais les projets sont open-source, ils sont libres d'être maintenus ou pas ensuite...
    C'est illusoire? Sans doute mais pas plus qu'un autre projet open source.

    Sinon pour la viabilité en entreprise (où la techno doit tourner mini minimum 15 ans) on a le code source d'angular, il n'est pas encore si long que cela et avec le bouquin Build your own angularJS une maintenance interne est jouable, tant qu'on ne s'attarde pas sur les côtés superficiels du framework.

  13. #13
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    @frfancha: la comparaison est ici faite avec la future branche 2.x d'Angular, qui n'est pas encore sortie et ne supportera plus IE8.
    One Web to rule them all

  14. #14
    Membre éprouvé

    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 506
    Points : 1 289
    Points
    1 289
    Par défaut
    Citation Envoyé par SylvainPV Voir le message
    @frfancha: la comparaison est ici faite avec la future branche 2.x d'Angular, qui n'est pas encore sortie et ne supportera plus IE8.
    Sauf que personne ne sait à quoi ressemblera cette branche finalement.
    Pour le moment ils sont encore en plein 1.4 (et 1.5 est prévu aussi)

  15. #15
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 700
    Points
    8 700
    Billets dans le blog
    43
    Par défaut
    Angular 2.0 est quand même un projet très (trop ?) ambitieux.
    Rien que concevoir un nouveau langage comme AtScript suffirait à occuper l'équipe pendant plusieurs années (mois).
    Tutoriels et FAQ TypeScript

  16. #16
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    @frfancha: Depuis la conférence ng-europe, on sait tous à quoi elle ressemblera. Il se peut que certains détails changent, mais les grandes lignes ont été données et l'équipe ne semble pas changer de cap malgré la réaction plutôt négative de la communauté (voir cette récente actu). Rob Eisenberg a quitté l'équipe de développement d'Angular précisément au moment des discussions sur Angular 2, et Aurelia se présente donc comme sa vision personnelle de ce qu'aurait dû être Angular 2. La comparaison est donc totalement justifiée ici.
    One Web to rule them all

  17. #17
    Membre éclairé
    Avatar de Paleo
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2013
    Messages : 242
    Points : 661
    Points
    661
    Par défaut
    À lire : l'article Aurelia Q&A publié hier.
    @SylvainPV, ne manque pas la section sur les Web components.

  18. #18
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Oui j'ai lu ça hier. Il semble que Eisenberg partage mon opinion sur la spec actuelle
    One Web to rule them all

  19. #19
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 700
    Points
    8 700
    Billets dans le blog
    43
    Par défaut
    Ce qui est intéressant avec ce framework, c'est le fait qu'il soit indépendant de Google.

    Il me semble ainsi qu'il peut donc se permettre de suivre ses convictions (et donc les solutions qui lui semble les plus pertinentes) plutôt que de se faire guider/parasiter ses choix par des considérations corporate pour favoriser d'autres produits made in Google mais pas forcément pertinents.

    Si Aurelia est une évolution de l'Angular actuel sans provoquer le big bang que risque d'être Angular 2.0, c'est plutôt une bonne chose pour les développeurs qui auront ainsi le choix.
    Tutoriels et FAQ TypeScript

  20. #20
    Membre éclairé
    Avatar de Paleo
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2013
    Messages : 242
    Points : 661
    Points
    661
    Par défaut
    Oui. Et par exemple 6to5 est beaucoup plus élégant que Traceur. On aimerait que "let" soit implémenté dans TypeScript :

    ES6 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for (let abc = 0; abc < 3; ++abc) {
      setTimeout(() => {
        console.log(abc);
      }, 500);
    }
    Compilé en ES5 par 6to5 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for (var abc = 0; abc < 3; ++abc) {
      (function (abc) {
        setTimeout(function () {
          console.log(abc);
        }, 500);
      })(abc);
    }
    Carrément bon !

Discussions similaires

  1. Angular.js et framework php
    Par bractar dans le forum AngularJS
    Réponses: 2
    Dernier message: 26/09/2013, 22h39
  2. Thread : cmt la killer lors d'un gros calcul
    Par Rodrigue dans le forum C++Builder
    Réponses: 3
    Dernier message: 05/01/2004, 19h54
  3. Recherche un framework RAD pour Eclipse
    Par Almex dans le forum Eclipse Java
    Réponses: 10
    Dernier message: 08/10/2003, 12h24
  4. [Persistence][Framework]Avis.
    Par quilo dans le forum Persistance des données
    Réponses: 5
    Dernier message: 10/09/2003, 14h55
  5. Modifications framework
    Par rgarnier dans le forum XMLRAD
    Réponses: 5
    Dernier message: 18/06/2003, 18h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo