Vaut-il aujourd’hui encore la peine d’apprendre JavaScript ? Absolument ! Trois quarts des développeurs web travaillent avec ce langage de programmation. Découvrez, dans notre article de blog, comment JavaScript est devenu l’un des langages de programmation les plus puissants et les plus polyvalents.
Vous connaissez Star Wars ? Ma femme aussi, mais seulement depuis qu’elle me connaît.
Compte tenu des formes de cohabitation possibles et socialement reconnues aujourd’hui, je dois brièvement clarifier que ma compagne est mon « numéro 1 ». C’est pourquoi je l’appelle volontiers « ma femme », même si nous ne sommes pas mariés.
Les personnes qui me reprocheraient que ma femme soit aussi la seule personne avec qui je partage le toit, le lit et la table ont tout à fait raison : l’un n’exclut pas l’autre.
C’est exactement ce que je pense de JavaScript (JS) et du World Wide Web :
JavaScript est en principe le seul langage de programmation web pour les clients, mais il est (et reste) le numéro 1.
Je ne suis pas le seul à voir les choses de cette manière : c’est aussi ce que confirme le classement très réputé des langages de programmation de RedMonk. Ce n’est donc pas une surprise de voir que le sondage « Stack Overflow Developer Survey 2022 » place JavaScript depuis 10 ans à la première place des langages de programmation les plus utilisés. Dans les faits, trois développeuses ou développeurs sur quatre utilisent JavaScript.
Vous avez des objections ? Partagez-les-nous dans les commentaires !
Ah oui, j’oubliais : je vais aussi vous prouver dans cet article qu’il existe de nombreuses similitudes entre JavaScript et Star Wars.
JavaScript a vu le jour en 1995.
Sa mère était l’entreprise Netscape Communications, qui, avec Netscape Navigator, a su se faire une place solide dans le cœur des premiers surfeurs du web. À cette époque, JavaScript s’appelait encore LiveScript. C’est seulement lorsque l’entreprise Sun Microsystems – pour ainsi dire son père – s’en est mêlée qu’il a reçu le nom de JavaScript.
Netscape n’existe plus. Mais sa création, Netscape Navigator, a été reprise par Mozilla Foundation avant d’être avalée par AOL.
Sun Microsystems n’existe plus non plus. Elle a fusionné avec Oracle. Son héritage : le langage de programmation Java.
Pour toutes celles et tous ceux qui connaissent les films Star Wars, voici un petit parallèle cinématographique : Padme Amidala est la mère (Netscape) et Anakin Skywalker le père (Sun Microsystems) de Luke Skywalker (JavaScript). Et oui… Anakin Skywalker est devenu Darth Vader (Java).
Pour éviter tout malentendu : j’ai beaucoup d’estime pour Java en tant que langage – Darth Vader a même jeté l’empereur maléfique dans le vide à la fin de l’épisode 6 – mais Java n’est tout bonnement pas JavaScript. Mais nous y reviendrons peut-être une autre fois.
Le développement technique de JavaScript est plutôt bien détaillé sur Wikipédia. Mais il n’y a probablement que les développeuses et développeurs pour comprendre des concepts comme « async/await » ou « Array#{flat,flatMap} ». Donc pour résumer simplement : JavaScript a vraiment évolué sur le plan technique !
D’un point de vue beaucoup moins technique, l’histoire de JavaScript peut être résumée ainsi :
À l’origine, JavaScript servait à lire ou écrire les propriétés d’un document HTML et à réagir aux données entrées par l’utilisateur.
Ainsi, en 1998, c’était extraordinaire de pouvoir passer la souris sur une image sur une page HTML et de la voir remplacée par une autre. Cela faisait des boutons très chics et branchés !
Aujourd’hui, on ne crée plus des boutons avec des images et CSS se charge pour nous des effets de survol de la souris (= hover effect).
Au tournant du millénaire, l’abréviation DHTML est devenue une vraie hype, fier représentant de tous les menus déroulants, le glisser-déposer ou la saisie automatique des champs de formulaires. On retrouvait le DHTML partout, alors même que les différents navigateurs géraient encore JavaScript chacun à leur niveau et à leur manière.
La synergie de HTML, de CSS et de JavaScript est ensuite devenue avec le temps bien plus robuste ; les divers navigateurs prenant de moins en moins leur chemin individuel au profit d’un standard qui s’imposait de plus en plus.
Toutefois, ce standard était compliqué à utiliser et ne convenait pas vraiment aux néophytes de la programmation. On avait besoin de beaucoup de lignes de code pour effectuer des tâches pourtant fondamentales ou pour mettre en œuvre des fonctionnalités appréciées par les utilisateurs et utilisatrices sur un site web.
Précision : je parle ici de l’interaction entre JavaScript et le Document Object Model HTML et pas de JavaScript en soi.
Et puisqu’il faut bien caser une petite référence à Star Wars : programmer du JavaScript pur sur une page web était aussi laborieux que de devoir mettre la cassette VHS de « Star Wars Épisode I – La menace fantôme (1999) » dans le lecteur et de devoir commencer par rembobiner avant de pouvoir profiter. Il était temps de passer à un autre support !
Dès 2005 a débarqué le sauveur du déjà presque enterré JavaScript : jQuery.
La question de savoir qui de JavaScript ou de jQuery est le meilleur est un non-sens, étant donné que jQuery est en JavaScript et que l’un ne va pas sans l’autre. Lisez d’ailleurs à ce sujet un de mes précédents articles de blog : « jQuery ou JavaScript : Pourquoi la question ne se pose pas ».
J’ai une fois vu un mème de Luke Skywalker se battant contre Darth Vader. Luke portait un t-shirt jQuery et disait qu’il ne passerait jamais du côté obscur de la force. Darth Vader portait un t-shirt JavaScript et disait : « Je suis ton père ! ».
Alors que JavaScript avait à peu près 15 ans, des développeurs et développeuses se sont demandé :
Si l’on avait su à l’époque tout ce que l’on veut faire aujourd’hui avec le HTML, comment aurait-on construit le HTML ?
La réponse à cette question a pris la forme d’AngularJS de Google. Et, avec lui, une révolution d’envergure du développement front-end. Le plus cool avec AngularJS, c’est qu’il est composé à 100% de JavaScript.
Pour toutes les personnes qui ne comprennent rien à ce titre : ne paniquez pas, je l’adresse aux programmeurs et programmeuses invétéré-e-s qui expriment un certain scepticisme vis-à-vis de JavaScript.
Six ans après AngularJS – en 2016, donc –, sort son successeur : Angular. Et au jour où j’écris ces lignes, on en est déjà à la version 15.
Ce doit donc être quelque chose de bien. Comme Star Wars.
Et effectivement : avec Angular, plus aucun programmeur orienté objet ne peut refuser de se mettre à JavaScript au simple prétexte que ce dernier ne supporte pas les classes. Même si Angular utilise le langage de programmation TypeScript, il le compile finalement en HTML, en CSS et donc (CQFD) en JavaScript.
Qu’en est-il aujourd’hui ? Si je fais la liste de ce que je programme encore et toujours avec JavaScript, voici ce qui en ressort :
Vous trouverez ici une liste des frameworks JavaScript pour les applications mobiles.
Cliquez ici pour plus d’infos sur nodeJS.
Découvrez par exemple des tutos pour la création de scripts sur Photoshop ou Illustrator.
Par exemple pour créer des textes d’aide dynamiques sur des documents PDF (certes avec JavaScript, mais sans avoir à écrire soi-même une seule ligne de code).
Vous trouverez ici un tutoriel à ce propos.
Découvrez plus d’information sur l’utilisation de scripts sur After Effects sur la page d’aide d’Adobe.
Ça vous intéresse aussi ? Consultez le guide ici.
En principe, JavaScript est utilisé le plus souvent dans le développement web front-end. En complément de HTML et de CSS, JavaScript est utilisé pour créer des sites web dynamiques ou pour insérer des éléments interactifs ou réactifs. Mais aussi pour développer des jeux sur navigateur et des applications mobiles.
Finalement, mais pas des moindres, JavaScript est aussi devenu important pour le développement web back-end. Par exemple dans la programmation d’applications web et serveur.
J’ai dit une fois dans l’un de mes cours : « Tout a ses avantages et ses inconvénients, sauf JavaScript, qui n’a que des avantages ! »
Et c’est une déclaration à laquelle j’adhère encore toujours.
Ma femme a ici bien entendu une toute autre opinion, parce qu’elle ne s’intéresse pas du tout aux langages de programmation et n’a pas du tout l’intention d’en apprendre un. (Et Star Wars ne l’intéresse pas non plus).
Mais pour toutes celles et tous ceux qui se tâtent à apprendre un langage de programmation, alors je ne peux que fortement recommander JavaScript.
Les avantages de JavaScript :
Je renonce volontairement à énumérer les inconvénients de JavaScript.
Pour trois raisons :
Les personnes qui envisagent de se lancer dans la programmation ne font rien, mais alors vraiment rien de faux avec JavaScript ! Les programmeuses et programmeurs invétéré-e-s qui ont envie de se diversifier peuvent aujourd’hui plonger dans le monde du web de manière orientée objet et typée grâce à JavaScript.
Celles et ceux qui souhaitent programmer sur le web ne pourront pas se passer de JavaScript. Peu importe le nom des frameworks utilisés actuellement.
Qu’en pensez-vous ? Je me réjouis de lire vos commentaires, qu’ils concernent JavaScript ou Star Wars.
Découvrez la programmation avec JavaScript, Angular ou jQuery et créez vos premières applications web grâce à nos formations.
Introduction à JavaScript
Apprenez à connaître le domaine d’application de JavaScript et commencez à écrire des programmes JavaScript standards.
JavaScript – Approfondissement
Approfondissez vos connaissances de JavaScript.
Introduction à Angular
Apprenez à utiliser Angular, le framework le plus avancé pour développer des applications single page.
Introduction à jQuery
Découvrez les meilleures pratiques de développement d’applications web riches avec jQuery.
Commentaire