L'écosystème de JavaScript et ReactJS

Avant 2008~2009, les frameworks tels que AngularJS, Backbone, EmberJS, … n’existaient pas encore. Tout du moins, ils n’étaient pas stables et on n’imaginait pas devoir les utiliser autant comme ce que nous faisons aujourd’hui. L’utilisation du JavaScript se résumait essentiellement à faire des animations (avec jQuery notamment), manipuler un peu le DOM pour améliorer l’expérience utilisateur et bien d’autres choses. En revanche, nous n’avions pas encore en tête de faire une application complète toute en JavaScript.

Nous avions l’impression de savoir faire du JavaScript alors qu’en réalité, très souvent, nous le maîtrisons très peu (évidemment, pas tous). Ne serait-ce que dans notre façon de programmer, certains concepts essentiels au JavaScript n’étaient pas acquis. Nous pensions alors que ça suffirait sans doute ? Mais c’était sans compter cette année-là…

Le 27 Mai 2009 arrive la première version de NodeJS. C’est une plateforme permettant d’exécuter du JavaScript côté serveur. Alors évidemment, nous ne sommes pas là pour parler de ça mais c’est l’un des premiers évènements qui a fait évoluer le JavaScript. Par exemple, nous pouvions commencer à concevoir des applications sans faire du PHP.

Durant cette année-là, on voit apparaître également l’un des premiers frameworks JavaScript avec Angular. Nous avons donc les premiers outils pour faire une application isomorphique. De 2009 à 2011, c’est l’essor des frameworks JavaScript. On voit arriver également BackboneJS et EmberJS qui viendront faire concurrence à AngularJS. Chacun à son approche, même si, dans les 2 cas, on retrouve la finalité de ce que l’on souhaite développer. Dès lors, la communauté JavaScript évolue de plus en plus et on commence à entendre dire que ce langage va devenir presque un incontournable... ! Sans rentrer dans les détails de l’évolution de ces outils, avançons jusqu’en…

2013 ~ 2014, des nouveaux arrivants

Les frameworks dont nous venons de parler s’utilisent de plus en plus. Des architectures client – serveur avec une API d’un côté et une SPA de l’autre commencent à voir le jour. Seulement, plus on avance et plus nous sommes contrariés par l’utilisation, l’approche de certains de ces outils.

En 2013~2014, Facebook rentre dans le jeu avec son propre framework : ReactJS. L’approche est déroutante ! On écrit du HTML dans du JavaScript, avec l’impression que c’est extrêmement long à utiliser pour faire quelque chose et puis… peut-on réellement faire une application complète avec cet outil ? Beaucoup de questions arrivent quand, un an plus tard… un nouveau framework fait aussi son apparition : VueJS.

2 nouveaux frameworks avec tous les 2 une approche orientée composant. Un bon nombre de développeurs chevronnés sentent le vent tourner car en réalité, c’est l’approche que beaucoup d’entre eux souhaitent avoir suite à une utilisation massive des autres frameworks (le temps de voir les contraintes et les limites). La suite, on la connaît. ReactJS fait énormément parler de lui (notamment, à une époque, avec son histoire de licence) et devient la librairie JavaScript la plus utilisée parmi ses « concurrents ».

WordPress utilise d'ailleurs ReactJS pour développer son nouvel éditeur : Gutenberg. Une pépite à mon sens, une hérésie pour d’autres, vous aurez bien le temps de vous faire votre avis. Toujours est-il qu’aujourd’hui, la maîtrise d’un framework JavaScript semble indéniable quand on travaille dans le web et plus particulièrement du côté frontend. Alors allons-y pour découvrir ReactJS !