Quel framework pour votre application Web ?

Le 06/01/2015

Dans Développement

Vous avez besoin de créer une application Web, et ne savez pas quoi choisir comme solution pour structurer tout ça. Le BlogDuWebdesign vous aide avec cette liste des 5 frameworks les plus utilisés !

Angular

Angularjs

Angular est un framework qui nous a été proposé au départ par Google, et qui est actuellement en position de dominance sur le marché. Néanmoins, cette position sera peut-être remise en cause par l’arrivée d'Angular 2, qui fait un peu de bruit pour sa non-rétrocompatibilité. Ce n'est peut-être pas encore définitif, mais c'est ce qui semble avoir été décidé pour l'instant.

Cette décision a fait peur à de nombreuses personnes, moi compris. En effet, le temps nécessaire pour apprendre à utiliser un framework de ce type est assez lourd, et se dire que notre investissement peut se retrouver inutile à chaque nouvelle version n'est pas une pensée très rassurante.

Sorti de cela, Angular est à mon avis le framework complet le plus intéressant, de par sa documentation très fournie et son utilisation relativement claire.

Ember

Emberjs

Ember est le premier "vrai" framework pour applications web que j'ai utilisé, et me laisse une impression de trop grande complexité pour débuter.

S'il peut être un bon choix pour de très grandes applications, sa structure reste très rigide et sa documentation n’était pas à jour sur tous les points, ce qui m'a fait le délaisser au profit d'Angular.

Backbone

Backbone

Backbone est un des anciens parmi les frameworks Javascript, et est lui aussi un des plus complets malgré sa réputation d’être un peu plus "léger". Clairement moins contraignant qu'Ember sur les autres librairies et frameworks avec lequel il peut cohabiter, il fournit tout de même une structure complète, avec modèles et collections, vues…

Knockout

Knockout

Knockout est assez discutable dans cet article, car il est un peu léger sur les fonctionnalités, ne fournissant qu'un système de modèles et un système de templating. Néanmoins, cela fait déjà deux fonctionnalités, et l'ajout d'un router est tellement trivial qu'il y trouve sa place à mon avis.

Sa particularité est d’être vraiment très léger, tant niveau poids que niveau fonctionnalités, et pourra (voire même devra) se voir agrémenter d'autres librairies avec lesquelles vous avez l'habitude de travailler.

React

React

React est une bibliothèque JavaScript développée par Facebook. Techniquement, React n'est pas un framework à part entière, mais une bibliothèque qui permet de construire des interfaces utilisateur dynamiques et réactives.

La particularité de React est l'utilisation d'un DOM virtuel, ce qui accélère les processus de rendu et offre de bonnes performances. Personnellement, j'ai effectué quelques tests avec React et j'ai été assez satisfait des résultats, bien que les avis puissent varier.

Une collection de pièces détachées plutôt qu'un framework complet

Finalement, un des autres choix qui se présentent est d'utiliser une collection d'outils que nous avons choisis, et qui répondent à nos besoins : un router, un système de modèle, une vue, a la limite un event manager.

Pourquoi faire ce choix plutôt que partir sur un framework complet, quels sont ses avantages et inconvénients ? L'article de mardi tentera de répondre à cette question !