Pourquoi une réintroduction ? Parce que JavaScript peut raisonnablement se targuer d’être le langage de programmation le plus incompris au monde. Bien que souvent raillé comme étant un simple jouet, derrière sa simplicité désarmante se cachent certaines fonctionnalités de langage très puissantes. On a vu au cours de l’année 2005 l’apparition d’un certain nombre d’applications JavaScript de tout premier plan, ce qui montre qu’une connaissance approfondie de cette technologie est une compétence importante pour tout développeur Web.

Il peut être utile de commencer avec une idée de l’histoire de ce langage. JavaScript a été créé en 1995 par Brendan Eich, un ingénieur chez Netscape, et fourni pour la première fois avec Netscape 2 début 1996. Il était au départ censé s’appeler LiveScript, mais a été renommé par une décision marketing néfaste dans le but de capitaliser sur la popularité du langage Java de Sun Microsystems, malgré le fait qu’ils n’aient que très peu en commun. Cela n’a jamais cessé d’être une source de confusion.

Quelques mois plus tard, Microsoft a lancé avec Internet Explorer 3 une version du langage globalement compatible, appelée JScript. Netscape a soumis le langage à l’Ecma International, une organisation de normalisation européenne, ce qui a abouti à la première édition du standard ECMAScript en 1997. Ce standard a reçu une mise à jour importante appelée ECMAScript edition 3 en 1999, et n’a plus bougé depuis. La quatrième édition a été abandonnée suite à des différents portants sur la complexité du langage. De nombreuses sections de la quatrième édition ont été utilisées pour servir de fondation à la cinquième édition d’ECMAScript, publiée en décembre 2009.

Cette stabilité est une excellente nouvelle pour les développeurs, parce qu’elle a donné aux différentes implémentations tout le temps nécessaire pour s’y adapter. Je me concentrerai presque exclusivement sur le dialecte de l’édition 3. Pour faciliter la lecture, le terme JavaScript sera cependant utilisé tout au long de cet article.

Contrairement à la plupart des langages de programmation, JavaScript n’a pas de concept d’entrée ou de sortie. Il est conçu pour s’exécuter comme un langage de script dans un environnement hôte, et c’est à cet environnement de fournir des mécanismes de communication avec le monde extérieur. L’environnement hôte le plus commun est un navigateur, mais des interpréteurs JavaScript existent également dans Adobe Acrobat, Photoshop, le moteur de widgets de Yahoo!, et même au sein d’environnements côté serveur.

JavaScript est un langage dynamique orienté objet ; il dispose de différents typages, opérateurs, objets coeurs et méthodes. Sa syntaxe s’inspire des langages Java et C, donc de nombreuses structures de ces langages s’appliquent également à JavaScript. À la différence de ces langages, JavaScript n’a pas de classes ; au lieu de cela, la fonctionnalité des classes est reprise par les prototypes d’objet. L’autre grande différence tient dans le fait que les fonctions sont des objets, ce qui leur permet de contenir du code executable et d’être transmises comme n’importe quel objet.

Commentaires

Vous devez vous inscrire ou vous connecter pour poster un commentaire