Témoignage sur JavaScript

Par Florent Barriol, développeur React

C’est quoi Javascript pour toi ?

Pour moi, Javascript c’est tout ce qui est dynamique. Javascript a permis le développement du front et lui a permis d’arriver au même niveau d’importance que le back. Avant il y avait Jquery et on faisait un peu de JS natif par-ci, par-là, aujourd’hui on travaille sur un code front plus puissant et plus industrialisé.

Comment as-tu découvert Javascript ?

J’ai d’abord découvert Javascript en DUT, via Jquery. Puis j’ai pu utiliser React lors de ma 1ère expérience professionnelle, c’est d’ailleurs React qui m’a permis de découvrir ce qu’était vraiment le JS natif. J’ai apprécié sa syntaxe, beaucoup plus légère que ce que j’avais pu voir en PHP ou Java.

Quel est ton framework / ta librairie de prédilection ?

J’ai adoré React et son fonctionnement avec des composants. Ces petites briques réutilisables qu’on doit faire interagir entre elles m’ont fait penser aux legos, j’aime toujours y jouer d’ailleurs. D’autres librairies JS utilisent également ce principe de composants, néanmoins à mes yeux React à un côté moins “magique”, il est plus déclaratif que d’autres librairies où les liens entre variables se font plus automatiquement. L’ajout des hooks a également permis d’alléger et faciliter la création des composants, adieu les classes bien verbeuses !

Avec React, j’ai la possibilité de créer ma propre bibliothèque d’outils, rien n’est prédéfini en amont.

Dans quels cas recommanderais-tu l’utilisation de JS / React ?

Pour moi, React est parfait pour la création de Design System, c’est d’ailleurs ce que nous utilisons dans ma mission actuelle chez Arte.

Notre principal enjeu côté Arte est de gérer la scalabilité du site, autrement dit continuer à le faire évoluer et faire en sorte que le front soit également utilisable sur d’autres plateformes (mobile, TV).

C’est là qu’intervient le système de composants permettant de créer rapidement de nouvelles pages et garantir une cohérence visuelle entre elles. D’autre part, si le contenu d’un composant est modifié cela pourra être répliqué automatiquement partout où il a été utilisé.

Quel a été l’impact de Javascript / React dans ta vision du développement ?

Lorsque j’ai découvert React, j’ai vraiment vu le potentiel à terme pour obtenir un front beaucoup plus robuste. Après une migration vers React lors de ma première expérience professionnelle, j’ai voulu en voir plus, continuer ma montée en compétences, continuer à acquérir les bonnes pratiques. Ce que j’apprécie également c’est que si tu as une bonne maîtrise de Javascript, tu peux utiliser n’importe quelle librairie ensuite. J’adore tout ce qui est visuel, avec HTML/CSS le combo est parfait.

Pourquoi devrait-on apprendre Javascript / React ?

Avant tout parce que c’est devenu un incontournable aujourd’hui si on veut faire du front.

La vraie valeur ajoutée de Javascript c’est la gestion de l’asynchronisme, c’est un concept fondamental avec JS que l’on ne retrouve pas dans tous les langages. L’asynchronisme permet de réaliser plusieurs requêtes en même temps. C’est parfait pour gérer les gros calculs côté front par exemple.

Quel est le “truc en plus” de Javascript ?

Javascript est un langage assez permissif et donc facile à prendre en main. Il dispose également d’une immense communauté, tout va très vite, le langage et ses librairies évoluent en permanence. Cela peut être perturbant pour certaines personnes mais personnellement je trouve cela génial.

Quelles sont les limites de Javascript ?

Le fait que ce soit un langage permissif est à la fois une force et un frein.

Javascript s’exécute principalement côté client, il n’est donc pas possible de vérifier en amont s’il y a des erreurs, celles-ci ne seront visibles qu’une fois la page chargée dans le navigateur. C’est là qu’intervient le typage (avec Typescript) ou des langages comme ReasonML qui possèdent un compilateur permettant de détecter les erreurs avant une mise en production.

Travailler avec Javascript demande de la rigueur, de respecter les bonnes pratiques comme tout projet, voire peut-être plus encore.