Qu'est-ce que JavaScript? Le langage de programmation full stack

JavaScript est un langage de script interprété très populaire qui est devenu au début de 2019 le langage le plus fréquemment appris par les développeurs. JavaScript est un standard ouvert, non contrôlé par un seul fournisseur, avec de nombreuses implémentations et une syntaxe facile à apprendre qui le rend populaire auprès des développeurs débutants et expérimentés.

JavaScript date des tout premiers jours du World Wide Web. Le langage a d'abord été déployé comme un moyen d'ajouter des fonctionnalités légères côté client aux pages Web, et est largement utilisé à cette fin aujourd'hui. Aujourd'hui, pratiquement tout ce qui est interactif ou animé sur une page Web est rendu en JavaScript, y compris essentiellement l'ensemble des écosystèmes de la publicité et des mesures en ligne. Mais JavaScript ne s'exécute pas uniquement dans le navigateur. Grâce à des frameworks de développement tels que Node.js, JavaScript est désormais utilisé pour écrire du code pour à peu près tous les créneaux auxquels vous pouvez penser, des clients aux serveurs en passant par le cloud.

Définition de JavaScript: qu'est-ce qu'un langage de script et en quoi Java et JavaScript sont-ils différents?

Comme son nom l'indique, JavaScript est un langage de script . Les langages traditionnels tels que C ++ sont compilés avant d'être exécutés sous forme binaire exécutable, le compilateur vérifiant les erreurs dans l'ensemble du programme avant la fin du processus. Les langages de script, en revanche, sont exécutés une ligne à la fois par un autre programme appelé interpréteur. Les langages de script ont commencé comme de simples séries de commandes shell utilisées pour exécuter d'autres programmes, mais leur flexibilité et leur facilité d'utilisation en ont fait un type de langage de programmation populaire à part entière, et ils sont devenus particulièrement importants avec l'essor du Web.

JavaScript lui-même est né à ces premiers jours du Web, et son histoire explique la partie Java quelque peu anormale de son nom. En 1995, Netscape venait de signer un accord avec Sun Microsystems pour devenir le premier détenteur de licence du langage Java de Sun, acquérant la possibilité d'exécuter des applets Java dans le navigateur Web Netscape Navigator, pionnier et alors dominant. Mais certains au sein de l'entreprise pensaient qu'il était également important de prendre en charge un langage de script plus léger dans Navigator. Brendan Eich, un employé de Netscape à l'époque, a expliqué:

«Il y avait des gens qui soutenaient fermement que Java était bien pour les programmeurs qui construisent des composants, mais il y a un public beaucoup plus large de personnes qui écrivent des scripts ou copient peut-être un script de quelqu'un d'autre et le modifient. Ces personnes sont moins spécialisées et peuvent être payées pour faire autre chose que la programmation, comme administrer un réseau, et elles écrivent des scripts à temps partiel ou en parallèle. S'ils écrivent de petits morceaux de code, ils veulent juste faire leur code avec le minimum de tracas. »

Eich était prescient: les applets Java n'ont jamais vraiment décollé, alors que le langage de script qu'il a créé (très rapidement) pour Netscape reste l'épine dorsale des sites Web interactifs. Initialement appelé LiveScript, le langage a été créé avec une syntaxe qui était superficiellement similaire à Java à bien des égards afin de puiser dans la communauté des développeurs Java, bien qu'en fait il n'y ait pas de relation directe entre les deux langages. Pourtant, comme Netscape avait déjà un accord avec Sun, juste avant sa sortie, le langage a été rebaptisé JavaScript et facturé par les deux sociétés comme un «complément» au langage Java.

En 1997, l'Association européenne des fabricants d'ordinateurs (ECMA) a publié une norme définissant le langage que n'importe qui pouvait mettre en œuvre indépendamment de Netscape; parce que «Java» est resté une marque déposée de Sun que seul Netscape avait une licence d'utilisation, cette version normalisée a été baptisée «ECMAScript». Microsoft avait qualifié la version mise en œuvre dans Internet Explorer de «JScript». Cependant, ces noms sont depuis longtemps tombés en désuétude, bien qu'ECMAScript reste le nom officiel de la norme, qui a été révisée à plusieurs reprises au fil des ans pour s'adapter à l'amélioration de la puissance de traitement et de la bande passante Internet. Dans la pratique, tout le monde se réfère au langage comme JavaScript. Techniquement,seule la Fondation Mozilla (qui a repris la propriété intellectuelle de Netscape en 2003) a l'approbation officielle d'Oracle (qui a acquis Sun en 2010) pour utiliser la marque Java, mais Oracle n'a fait aucun effort pour empêcher l'utilisation universelle du nom.

Activer JavaScript

Aux débuts de JavaScript, il n'était pas rare que les navigateurs aient l'exécution de JavaScript désactivée par défaut. Aujourd'hui, cela rendrait la majeure partie du Web inutilisable, car JavaScript fait partie intégrante de presque toutes les pages Web conçues par des professionnels. Si, pour une raison quelconque, vous pensez que JavaScript a été désactivé dans votre navigateur, c'est une excellente page qui donne des instructions étape par étape pour l'activer. (Vous pouvez également inverser ces instructions pour désactiver JavaScript, pour vous donner une idée de la gravité du monde sans cela.)

Télécharger JavaScript

Et si vous voulez jouer avec JavaScript aujourd'hui? Parce que c'est un langage interprété, il n'y a vraiment rien à télécharger. Vous pouvez lancer votre éditeur de texte préféré et commencer à taper du code! Il existe un interpréteur JavaScript intégré à n'importe quel navigateur que vous pouvez nommer et qui peut exécuter des commandes, vous pouvez donc simplement intégrer votre JavaScript dans un document HTML et le charger pour le tester.

Si vous souhaitez exécuter du code JavaScript dans un environnement de bureau - ce qui vous permettra, entre autres, d'accéder au système de fichiers, étant donné que JavaScript s'exécutant dans le navigateur est délibérément mis en bac à sable pour des raisons de sécurité - vous pouvez télécharger Node.js.

Éditeur JavaScript

Bien sûr, la plupart des développeurs ne vont pas simplement taper du code à la main dans un fichier texte. Nous en sommes venus à accepter l'assistance logicielle dans la création de nos logiciels. En ce qui concerne JavaScript, avez-vous couvert: Nous avons dressé une liste des 10 meilleurs éditeurs JavaScript disponibles. Celles-ci vont de Sublime Text, un éditeur de texte avec coloration syntaxique et plusieurs fenêtres pour vous aider à naviguer dans vos fichiers, à Visual Studio Code, un IDE complet de Microsoft. La plupart des options dont nous discutons sont open source et gratuites.

Syntaxe JavaScript: les bases

Qu'est-ce qui se passe dans une application JavaScript? Jetons un coup d'œil à certains des composants fondamentaux de la syntaxe JavaScript, avec des liens vers la référence JavaScript W3Schools où vous pouvez trouver plus de détails:

  • Opérateur JavaScript : ce sont les éléments constitutifs des fonctionnalités du programme. Ce sont les opérateurs arithmétiques de base à partir desquels vous construisez des fonctions mathématiques et des opérateurs d'affectation qui vous permettent de définir la valeur des variables.
  • Fonction JavaScript : une fonction est un bloc de code autonome que vous écrivez pour effectuer une tâche spécifique. Certains sont intégrés au langage, tandis que d'autres peuvent être écrits vous-même pour réaliser la logique de votre application. Une fois que vous l'avez définie, vous pouvez appeler la fonction - l'invoquer et éventuellement transmettre certaines variables ou données sur lesquelles elle pourra travailler - ailleurs dans votre programme.
  • JavaScript substring () : méthode qui extrait les caractères que vous spécifiez dans une chaîne et génère une nouvelle chaîne composée uniquement de ces caractères.
  • Tableau JavaScript : type spécial de variable qui peut contenir une liste complète de valeurs à la fois. JavaScript dispose d'un certain nombre d'outils pour rechercher et manipuler les valeurs spécifiques que vous souhaitez dans un tableau. Par exemple...
  • JavaScript forEach () : Cette méthode appelle une fonction spécifiée une fois pour chaque élément d'un tableau, dans l'ordre.
  • JavaScript map () : quelque chose d'une variation sur forEach(), une map crée un nouveau tableau contenant les résultats de l'appel d'une fonction sur chaque valeur dans un autre tableau. Par exemple, vous pouvez multiplier chaque valeur d'un autre tableau par 10.

Apprendre JavaScript avec des didacticiels JavaScript

Évidemment, si vous voulez devenir sérieux pour devenir développeur JavaScript, vous voudrez bien aller plus loin. La référence W3Schools est idéale pour plonger dans les détails sur des éléments individuels de la syntaxe JavaScript, mais il existe d'autres tutoriels plus systématiques:

  • Le tutoriel JavaScript moderne est une ressource très complète qui vous guide étape par étape à partir d'un simple Hello, World! programme pour créer des fonctionnalités interactives sophistiquées dans le navigateur.
  • Les exemples JavaScript de Tutorial Republic offrent une multitude de programmes JavaScript courts qui augmentent en difficulté afin que vous puissiez voir comment le code JavaScript fonctionne en action.
  • La colonne JavaScript Everywhere de Jonathan Freeman aborde les problèmes du monde réel et propose des tutoriels sur la façon dont JavaScript peut les résoudre.

JavaScript Snake est un excellent exemple spécifique de ce que vous pouvez faire avec JavaScript. Il s'agit d'un jeu simple classique qui peut être construit de manière à s'exécuter dans le navigateur en utilisant uniquement JavaScript, HTML et CSS. Ce tutoriel de Panayiotis Nicolaou vous montre comment.

Questions d'entretien JavaScript

Parce que JavaScript est très populaire, de nombreux responsables du recrutement s'attendent à ce que les candidats sachent comment l'écrire et demandent souvent aux candidats d'écrire du code JavaScript sur place, lors de l'entretien. Si vous essayez de vous préparer à un entretien comme celui-là, vous pouvez trouver de nombreuses listes d'exemples de questions en ligne - Toptal en a une bonne, par exemple - mais pour une approche plus holistique, nous recommandons cet essai de Naren Yellavula sur le développement. morceaux(). C'est un mini tutoriel JavaScript à part entière, mais il se concentre spécifiquement sur les éléments de base dont vous avez besoin pour réussir les types de questions qui ont tendance à se poser lors des entretiens. Prenez le temps de le lire et bonne chance!