Typescript est un meta-langage, il a pour but d'améliorer la syntaxe JS. Il permet entre autre de "typer" nos variables.

Install with NPM :

npm install -g typescript

Créer un fichier .ts avec notre code typescript
//installer le package Typescript sur sublimetext ( si c'est pas deja fait ) 
Pour build notre projet : CTRL B 
Choisir typescript 
build parameters : none ou alors tu en mettras quand tu sauras ce que c'est :D

Le typage :

var nom : string = "Cyril";
var pointDeVie : number = 100;

Les fonctions :

On peut aussi typer les paramètres et la valeur de retour d'une fonction, toujours avec la syntaxe des deux points:

function creerHero(pointDeVie : number, nom : string) : Heros {
	var heros = new Heros();
	heros.pointDeVie = pointDeVie;
	heros.nom = nom;
	return heros;
}

Les décorateurs :

Les annotations typescript permettent d'ajouter des informations sur nos classes, pour indiquer par exemple que telle classe est un composant de l'application :

@component({
	selector: "mon-composant",
	template: "mon-template.html"
)}

export class MonComposant{}

Les interfaces :

interface Person {
    firstName: string;
    lastName: string;
}

function greeter(person: Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}

let user = { firstName: "Jane", lastName: "User" };

document.body.textContent = greeter(user);

Web components :

Ce sont des sections de notre page web qui sont complétement autonomes et fonctionnent de manière indépendante de notre page. On peux les voir comme des widgets. Ils ont leur propre code HTML CSS et JS.

Composés de quatre technologies différentes :

  1. Customs elements , permettent de créer ses propres éléments HTML valides
  2. Shadow DOM , permet d'encapsuler du code HTML CSS et JS qui n'interfere pas avec le DOM principal
  3. Les templates HTML , permettent de développer des morceaux de code HTML qui ne sont pas interprétés au chargement de la page