Blog ENI : Toute la veille numérique !
🎃 Jusqu'à -30% sur les livres en ligne, vidéos et e-formations.
Code : GHOST30.
Cliquez ici !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Angular
  3. TypeScript
Extrait - Angular Développez vos applications web avec le framework JavaScript de Google (3e édition)
Extraits du livre
Angular Développez vos applications web avec le framework JavaScript de Google (3e édition) Revenir à la page d'achat du livre

TypeScript

JavaScript

Le langage JavaScript s’est imposé depuis quelques années comme le langage indispensable au développement d’applications web.

Initialement, JavaScript a été créé comme un langage de scripting utilisé pour apporter un peu de dynamisme aux sites web statiques. Mais au fil du temps, à l’aide de la popularisation de frameworks comme jQuery ou AngularJS, l’utilisation du langage JavaScript est devenue de plus en plus importante, jusqu’à permettre la création d’applications 100 % front, possédant des fonctionnalités identiques à ce que l’on peut faire en application client lourd (mode offline, notifications, etc.).

JavaScript est un langage assez différent de ce que l’on a l’habitude de rencontrer. Tout d’abord, JavaScript est un langage interprété, le code écrit étant directement exécuté sans phase de compilation préalable.

JavaScript est également un langage dynamiquement typé, c’est-à-dire qu’un élément peut changer de type en cours d’exécution. Une variable d’un certain type peut ainsi se voir affecter une valeur d’un autre type.

var maFonction = function() { 
    console.log("I'm a function"); 
}  
maFonction = 27; 

Exemple du typage dynamique JavaScript. La variable est initialisée en tant que fonction puis prend une valeur entière.

Enfin, JavaScript est un langage par nature monothreadé, fortement asynchrone et basé sur un mécanisme d’événements non bloquants. Malgré sa nature monothreadée, JavaScript est donc par design un langage très performant, permettant de tirer parti de la totalité des performances des ressources...

TypeScript

L’une des solutions à ces problématiques a été la création de langages qui se transcompilent en JavaScript, c’est-à-dire que la compilation génère des fichiers JavaScript. C’est notamment le cas de TypeScript, porté par Microsoft et utilisé par Angular.

D’autres langages similaires existent, comme Dart ou CoffeeScript, mais TypeScript est sans doute aujourd’hui l’un des plus complets.

TypeScript est donc un langage compilé et typé fortement qui génère du JavaScript compréhensible par tous les navigateurs.

D’autres solutions ont été trouvées, comme la création de nouveaux langages comme Flash ou Silverlight pouvant être interprétés par les navigateurs grâce à l’installation de plug-ins. Ces langages ont signé leur fin le jour où les navigateurs ont décidé de ne plus les supporter. L’avantage de TypeScript est qu’il génère du code JavaScript totalement compréhensible nativement, c’est-à-dire sans l’aide de plug-ins, par tous les navigateurs. Cette solution est donc pérenne dans le temps.

Le typage fort de ce langage va permettre d’associer un type à un élément et empêcher cet élément de changer de type. Ce typage fort permet donc une stabilité supérieure du code puisqu’il sera possible de prédire le type d’un élément, et en conséquence ses différentes valeurs possibles.

var id: number; 

La phase de compilation de TypeScript permet de valider syntaxiquement le code. Si celui-ci n’est pas valide syntaxiquement, c’est-à-dire si le développeur a fait usage d’une propriété sur un objet qui n’existe...