JavaScript

Références

L'actualité

Librairie

L'information

JavaScript

JavaScript est un langage de programmation de scripts principalement employé dans les pages web interactives mais aussi pour les serveurs avec l'utilisation (par exemple) de Node.js.

C'est un langage orienté objet à prototype, c'est-à-dire que les bases du langage et ses principales interfaces sont fournies par des objets qui ne sont pas des instances de classes, mais qui sont chacun équipés de constructeurs permettant de créer leurs propriétés, et notamment une propriété de prototypage qui permet d'en créer des objets héritiers personnalisés.

   
En outre, les fonctions sont des objets de première classe. Le langage supporte le paradigme objet, impératif et fonctionnel. JavaScript est le langage possédant le plus large écosystème grâce à son gestionnaire de dépendances npm, avec environs 500 000 paquets en août 2017.

AJAX (Asynchronous JavaScript and XML)

L'architecture informatique Ajax (acronyme de JavaScript et XML asynchrones) permet de construire des applications Web et des sites web dynamiques interactifs sur le poste client en se servant de différentes technologies ajoutées aux navigateurs web entre 1995 et 2005.

Ajax combine JavaScript, les requêtes de type XMLHttpRequest, les manipulations du DOM, ainsi qu'un format de données (XML ou JSON), afin d'améliorer maniabilité et confort d'utilisation des applications internet riches :

   
  • DOM et JavaScript permettent de modifier l'information présentée dans le navigateur en respectant sa structure ;
  • l'objet XMLHttpRequest sert au dialogue asynchrone avec le serveur Web ;
  • XML, cité dans l'acronyme, était historiquement le moyen privilégié pour structurer les informations transmises entre serveur Web et navigateur, de nos jours le JSON tend à le remplacer pour cet usage.



jQuery

jQuery est une bibliothèque JavaScript libre et multiplateforme créée pour faciliter l'écriture de scripts côté client dans le code HTML des pages web.
La première version est lancée en janvier 2006 par John Resig.

La bibliothèque contient notamment les fonctionnalités suivantes :

  • parcours et modification du DOM (y compris le support des sélecteurs CSS et un support basique de XPath);
   
  • Événements;
  • Effets visuels et animations;
  • Manipulations des feuilles de style en cascade (ajout / suppression des classes, d'attributs...) ;
  • Ajax;
  • Plugins ;
  • Utilitaires (version du navigateur web...).
Depuis sa création en 2006 et notamment à cause de la complexification croissante des interfaces Web, jQuery a connu un large succès auprès des développeurs Web et son apprentissage est aujourd'hui un des fondamentaux de la formation aux technologies du Web.

Il est à l'heure actuelle la librairie front-end la plus utilisée au monde (plus de la moitié des sites Internet en ligne intègrent jQuery).

jQuery UI

jQuery UI est une collection de widgets, effets visuels et thèmes implémentés avec jQuery, des feuilles de style en cascade, et du HTML.

Selon Libscore, un service d'analyses JavaScript, jQuery UI est utilisé sur plus de 197 000 sites dans le premier million, ce qui en fait la bibliothèque JavaScript la plus populaire.

Parmi ses utilisateurs les plus notables, on trouve Pinterest, PayPal, IMDb, The Huffington Post, Netflix etc...
   

Node.js

Node.js est une plateforme logicielle libre et événementielle en JavaScript orientée vers les applications réseau qui doivent pouvoir monter en charge. Elle utilise la machine virtuelle V8 et implémente sous licence MIT les spécifications CommonJS. Parmi les modules natifs de Node.js, on retrouve HTTP qui permet le développement de serveur HTTP. Il est donc possible de se passer de serveurs web tels que Nginx ou Apache lors du déploiement de sites et d'applications web développés avec Node.js.
   
Concrètement, Node.js est un environnement bas niveau permettant l'exécution de JavaScript côté serveur.

Node.js est de plus en plus populaire comme plateforme serveur, elle est utilisée par Groupon, Vivaldi, SAP, LinkedIn, Microsoft, Yahoo, Walmart, Rakuten, Sage et PayPal.

Angular

Angular est un framework coté client et open source basé sur TypeScript dirigée par une équipe Google et par une communauté de particuliers et de sociétés.

Angular est une réécriture complète de AngularJS, framework construit par la même équipe. À l'origine, la réécriture de AngularJS a été appelé "Angular2" par l'équipe, mais cela a conduit à la confusion entre les développeurs. Pour clarifier, l'équipe a annoncé que des termes différents doivent être utilisés pour chaque framework. "AngularJS", se référant aux versions 1.X. et "Angular" sans le "JS", en référence aux versions 2 et plus.
   

Découvrez ici mon web dédié au FrameWork Angular...


TypeScript

TypeScript est un langage de programmation libre et open source développé par Microsoft qui a pour but d'améliorer et de sécuriser la production de code JavaScript. C'est un sur-ensemble de JavaScript (c'est-à-dire que tout code JavaScript correct peut être utilisé avec TypeScript).

Le code TypeScript est transcompilé en JavaScript, pouvant ainsi être interprété par n'importe quel navigateur web ou moteur JavaScript. Il a été cocréé par Anders Hejlsberg, principal inventeur de C#.

   
TypeScript permet un typage statique optionnel des variables et des fonctions, la création de classes et d'interfaces, l'import de modules, tout en conservant l'approche non-contraignante de JavaScript. Il supporte la spécification ECMAScript.

Découvrez ici mon web dédié à TypeScript...


React

React (aussi appelé React.js ou ReactJS) est une bibliothèque JavaScript libre développée par Facebook depuis 2013. Le but principal de cette bibliothèque est de faciliter la création d'application web monopage, via la création de composants dépendant d'un état et générant une page (ou portion) HTML à chaque changement d'état.

React est une bibliothèque qui ne gère que l'interface de l'application, considéré comme la vue dans le modèle MVC. Elle peut ainsi être utilisée avec une autre bibliothèque ou un framework MVC comme AngularJS.

   
La bibliothèque se démarque de ses concurrents par sa flexibilité et ses performances, en travaillant avec un DOM virtuel et en ne mettant à jour le rendu dans le navigateur qu'en cas de nécessité.

La bibliothèque est utilisée notamment par Netflix (côté serveur uniquement depuis le 25 octobre 2017 pour gagner 50 % de performance), Yahoo, Airbnb, Sony, Atlassian ainsi que par les équipes de Facebook, appliquant le dogfooding sur le réseau social éponyme, Instagram ou encore WhatsApp. A la fin de 2015, WordPress.com annonce Calypso, une interface pour les administrateurs WordPress, développée en JavaScript avec node.js et React.

Electron

Electron est un framework permettant de développer des applications de bureau avec des technologies web (Javascript, HTML et CSS). Electron permet de développer des applications pour Mac OS X, Microsoft Windows et Linux.

L'infrastructure (backend) est codée en node.js, et l'interface (frontend) est bâtie sur la base des outils chromium, la partie open source de Google Chrome.

Electron est un logiciel libre open source développé par Github sous licence MIT.

   
Electron a notamment permis de développer les éditeurs de texte libres Atom de Github et Visual Studio Code de Microsoft.