grâce à ce framework JavaScript MVC two-way data binding
Salut,
Voici quelques temps que je programme avec Angular 1, et je dois bien avouer que je suis séduit par sa capacité de "rapid development". Le two-way data binding, c'est top pour réduire le code JavaScript et produire un applicatif dans un délai court.
En revanche, Angular regroupe bon nombre d'inconvénients dont :
- une syntaxe spéciale, et donc temps de prise en main long ;
- des scopes séparés indépendants, sauf en programmation de services ;
- la difficulté à intégrer des bibliothèques extérieures ;
- la non pérennité : Angular 2 est incompatible avec angular 1.
Le dernier de ces points est notamment dramatique car il va falloir reformer les développeurs à une technologie absolument différente d'Angular 1 (plus de 2 way binding, plus de scope, syntaxe encore plus complexe, architecture différente, etc.), et après il faudra re développer ce qu'on avait fait en version 1. Google pousse à un tel investissement au prétexte qu'Angular 2 serait dix fois plus rapide qu'Angular 1. Pour ma part, les performances d'Angular 1 ne m'ont jamais choqué, au contraire d'autres aspects.
Qui nous garantit que dans deux ans Google ne nous fera pas à nouveau le même coup, avec Angular 3 ? Cette perspective est effrayante.
Ah ! Si tout était aussi simple, documenté, stable et performant que jQuery !
C'est muni de ces réflexions que j'ai entrepris de résoudre le problème en programmant un Angular en jQuery. Je cherche ainsi à allier le meilleur des deux mondes. Le résultat est Damo.js, un framework JavaScript MVC two-way data binding.
J'y ai reproduit toutes les caractéristiques d'Angular 1 :
- la syntaxe html ;
- les filtres ;
- les directives ;
- le scope ;
- la modularité .
- le routing ;
- etc.
Je livre le tout en GPL avec un GitHub. Au final c'est une bibliothèque 20 fois moins volumineuse qu'Angular, avec une programmation simplifiée ("à l'ancienne", par exemple sans la syntaxe très spéciale d'Angular), totalement modulaire et compatible avec toute autre bibliothèque extérieure. Je l'utilise actuellement pour développer une nouvelle interface aux bateaux d'OceanVirtuel.com, et je dois dire que ça me facilite grandement la vie.
Damo est jeune et, à n'en pas douter, il faudra l'endurcir et l'améliorer de nouvelles fonctionnalités. C'est pourquoi je vous invite à participer sur GitHub si vous le souhaitez. Si vous pensez qu'il faut une alternative à Google et son Angular, une alternative stable et pérenne, vous trouverez en Damo un projet qui répondra à votre attente.
Notez que j'ai pris soin de la documentation et aussi de proposer un exemple simple, téléchargeable, qui aide à la prise en main.
Cordialement.
La page de Damo.
Et vous ?
Que pensez-vous de cette bibliothèque ?
Retrouver les cours et tutoriels sur les frameworks JavaScript.