En 2001, Roy Fielding, un cofondateur de la fondation Apache, avait pr�dit que JavaScript allait r�ussir � s'imposer sur le Web,
voici ses raisons
Sur le Web d�aujourd�hui, le triplet HTML, CSS et JavaScript dominent largement les autres combinaisons utilis�es dans le d�veloppement des applications Web, une tendance qui va sans doute continuer � progresser au cours des ann�es � venir. Malgr� le fait que Java soit jug� plus robuste que JavaScript, le langage de Sun Microsystems n�a pas su s�imposer avec la fonctionnalit� des applets pour le Web. Ce qui s�est pass�, Roy Fielding, un des fondateurs de la fondation Apache, l�avait pr�dit, citant quelques-unes des raisons pour lesquelles JavaScript allait battre Java sur le Web.
Roy Thomas Fielding est un informaticien am�ricain n� en 1965 � Laguna Beach en Californie. Il est notamment connu pour ses travaux pour le d�veloppement des premiers serveurs Web, et principalement le serveur Web Apache, le fonctionnement du Web, la sp�cification HTTP et est l�un des fondateurs de la fondation Apache. Dans un paragraphe d�un m�moire publi� en 2001 sur la fa�on dont l�architecture REST a influenc� le d�veloppement de l�architecture du Web moderne, Fielding comparait Java et JavaScript et trouva ce dernier plus efficace sur le Web que Java.
Roy Thomas Fielding
Selon Fielding, les deux langages ont �t� introduits � un moment o� le paradigme du code � la demande (code-on-demande) �tait en plein essor sur le Web. Pour rappel, en informatique distribu�e, le code � la demande est une technologie qui envoie un code logiciel ex�cutable d'un ordinateur serveur � un ordinateur client � la demande du logiciel du client. � ce jour, les exemples les plus connus du paradigme du code � la demande sur le Web sont les applets Java, le langage ActionScript d'Adobe pour le lecteur Flash, et le langage JavaScript.
Pour lui, si les applets Java n�ont pas pu tenir la concurrence avec la mont�e du JavaScript, ce n'est certainement pas pour sa qualit� technique en tant que langage, puisque sa syntaxe et son environnement d'ex�cution sont consid�r�s comme m�diocres par rapport � Java. Ce n'est pas non plus � cause du marketing : Sun (d�sormais rachet� par Oracle) d�passe de loin Netscape � cet �gard, et continue � le faire. Ce n'est pas non plus pour les caract�ristiques intrins�ques des langages, puisque Java a eu plus de succ�s que JavaScript dans tous les autres domaines de programmation (applications autonomes, servlets, etc.).
En outre, Roy Fielding pense que les raisons de cette divergence se trouvent dans les caract�ristiques que pr�sente le langage Java en tant que type de m�dia de repr�sentation au sein de REST. L�analyse de Fielding admet que le langage JavaScript est mieux adapt� au mod�le de d�ploiement de la technologie Web. Selon lui, JavaScript est beaucoup plus facile � apprendre, sans grand effort pour un d�butant.
De m�me, il estime que JavaScript a �galement un impact moindre sur la visibilit� des interactions. Des organisations ind�pendantes peuvent lire, v�rifier et copier le code source �crit en JavaScript de la m�me fa�on qu'elles pourraient copier le code HTML. Java, en revanche, est t�l�charg� sous forme d'archives binaires, ce qui signifie que l'utilisateur doit se fier aux restrictions de s�curit� dans l'environnement d'ex�cution Java. En plus, ce dernier poss�derait de nombreuses autres fonctionnalit�s dont l'autorisation dans un environnement s�curis� est jug�e discutable.
Il s�agit notamment de la possibilit� de renvoyer les requ�tes RMI (invocation de m�thode distante) au serveur d'origine. Il a aussi d�clar� que la distinction la plus importante entre les deux est peut-�tre le fait que JavaScript entra�ne une latence moindre per�ue par l'utilisateur. Ce dernier est g�n�ralement t�l�charg� dans le cadre de la repr�sentation primaire, alors que les applets Java n�cessitent une requ�te s�par�e. Le code Java, une fois converti au format de code d'octet, est beaucoup plus grand que le JavaScript typique.
Enfin, l�autre chose en d�faveur de Java est qu�il exige que l'ensemble des fichiers de classe soit t�l�charg� et install� avant que l'application puisse s�ex�cuter. Par contre, le JavaScript peut �tre ex�cut� pendant le t�l�chargement du reste de la page HTML. Ces diff�rents arguments de Fielding semblent montrer que d�s le d�part, Java n�avait aucune chance de s�imposer sur le Web au d�triment de JavaScript. Aujourd�hui, JavaScript est all� bien au-del� de ce pour quoi il a �t� con�u au d�but. Le langage a un �cosyst�me plus vaste que jamais et continue � se d�velopper.
Le rapport sur l��tat de JavaScript en 2019 montrait comment il a continu� � prendre de l�ampleur au cours de ces derni�res ann�es. Le langage semble avoir conquis le Web pour toujours. Il est d�ailleurs actuellement le langage le plus utilis� par les contributeurs sur GitHub. Par ailleurs, d�autres facteurs ont aussi contribu� � sa domination sur le Web. Les entreprises comme Microsoft ont aussi pouss� quelques pions.
Une fois que l'on ne pouvait plus compter sur la pr�sence de Java sur tous les principaux navigateurs, il ne restait plus que le JavaScript et il ne cessait de s'am�liorer. Il a d�velopp� plus tard TypeScript, un surensemble de JavaScript avec des propri�t�s beaucoup plus strictes. Cela a pour but d'am�liorer et de s�curiser l'�criture de code source JavaScript. Il a contribu� � faciliter la cr�ation d�application Web plus moderne. D�autres projets comme Node.js ont apport� JavaScript du c�t� du serveur avec un temps d�ex�cution ultrarapide.
Source : Roy Thomas Fielding
Et vous ?
Quel est votre avis sur le sujet ?
�tes-vous du m�me avis que Roy Thomas ?
Pour quelles autres raisons JavaScript d�passe Java sur le Web selon vous ?
Voir aussi
�tat de JavaScript en 2019 : les d�veloppeurs aiment un peu plus React, Angular est en d�clin, un groupe de d�veloppeurs pense que JS est � trop complexe �
Python devance Java et devient le deuxi�me langage de programmation le plus utilis� par les contributeurs sur GitHub, apr�s JavaScript
The State Of JavaScript 2018 : l'enqu�te r�v�le que JavaScript est en pleine �volution. Voici une vue macro des technologies JS utilis�es
La version 3 de Svelte, le framework de composants graphiques, est disponible et repense la r�activit� des frameworks autrement
La version stable de TypeScript 3.7.0 est disponible et apporte diverses fonctionnalit�s et quelques am�liorations au langage
Partager