TypeScript 101
Développement web en TypeScript, Télécom Paris
Le cours complet de développement web en TypeScript, en première année à Télécom Paris : les explications, les exercices avec leurs corrigés, les annales et l’outillage d’examen.
Il se suffit à lui-même : tout ce qui est nécessaire pour suivre le cours et préparer les deux évaluations est ici.
Les chapitres sont conçus pour être faits dans l’ordre, chacun s’appuyant sur le précédent. Chaque chapitre suit la même structure : objectifs → explications → exercices. Chaque exercice porte un niveau : commencez par les « essentiel », dans l’ordre.
Chaque exercice est suivi de son corrigé, replié : il ne s’affiche que si vous cliquez dessus. Cherchez sérieusement avant de le déplier : c’est pendant la recherche que se fait l’apprentissage, pas pendant la lecture de la réponse.
Ce que vous saurez faire à la fin
Installer et piloter un environnement de développement complet : éditeur,
tsconfig, npm, outils de développement du navigateur, débogueur, et en bonus, une IA de codage utilisée intelligemment.Programmer en TypeScript : typage statique, interfaces, classes, héritage, polymorphisme, generics ; les bases de la programmation fonctionnelle (fonctions fléchées,
map/filter/reduce) et événementielle (exceptions, écouteurs d’événements) ; l’asynchrone avecasync/await; la modularité avecimport/export.Assembler une application web complète : formulaires, web components, JSON,
fetch, API REST en CRUD (avec et sans authentification), et contournement des restrictions CORS par un proxy.
Le parcours en un coup d’œil
Séance 1 : Premiers pas
Installer l’outillage, transpiler son premier fichier TypeScript, découvrir le système de types, servir une page avec Astro, découper son code en modules.
Séance 2 : Fonctions, objets et tableaux
Écrire des fonctions fléchées, décrire des objets de données, manipuler des tableaux d’objets sans écrire une seule boucle.
2.1 Fonctions fléchées · 2.2 Objets de données · 2.3 Tableaux
Séance 3 : Programmation orientée objet
Classes, encapsulation, contrats, héritage, polymorphisme : réunir des données et le comportement qui les protège.
3.1 Classes et encapsulation · 3.2 Contrats, héritage et polymorphisme
Séance 4 : Évaluation 1
Environ 3 h sur les séances 1 à 3 : tableaux d’objets, classes, contrats.
Séance 5 : Données et erreurs
Un retour collectif sur l’évaluation 1, puis : sérialiser en JSON, écrire du code générique réutilisable, gérer les erreurs proprement.
Séance 6 : Asynchrone et réseau
Comprendre l’attente non bloquante, appeler une API distante, comprendre et contourner CORS.
Séance 7 : Applications complètes
Créer, lire, modifier, supprimer des données via une API REST ; formulaires. Les composants réutilisables se terminent en autonomie.
En autonomie : préparer l’évaluation 2
Un plan de révision en cinq étapes, avec une annale en conditions réelles et une grille d’auto-évaluation.
Séance 8 : Évaluation 2
Environ 3 h sur tout le cours, composant web minimal compris.
Les diapositives
Le support projeté en séance, séance par séance. Chaque diaporama tient entre 30 et 45 minutes (20 pour la séance 7, plus courte) et renvoie au cours écrit pour le détail.
| Séance | Diaporama |
|---|---|
| Séance 1 : Premiers pas | ouvrir |
| Séance 2 : Fonctions, objets et tableaux | ouvrir |
| Séance 3 : Programmation orientée objet | ouvrir |
| Séance 5 : Données et erreurs | ouvrir |
| Séance 6 : Asynchrone et réseau | ouvrir |
| Séance 7 : Applications complètes | ouvrir |
Les séances 4 et 8 sont les deux évaluations.
Évaluation
| Épreuve | Quand | Programme | Note |
|---|---|---|---|
| Évaluation 1 | séance 4 | séances 1 à 3 (chap. 1.1 à 3.2) | /20 |
| Évaluation 2 | séance 8 | tout le cours (chap. 1.1 à 7.3) | /20 |
| Note finale | moyenne des deux |
Pas de projet ni de rendu noté : la note finale est la moyenne des deux évaluations. Ces modalités ne changent pas en cours de période.
Les deux épreuves durent environ 3 h et se déroulent sans accès à internet et sans IA, avec l’outillage d’examen fourni. La note de l’évaluation 1 est rendue, avec un corrigé commenté, avant l’évaluation 2. La page de chaque évaluation détaille ce qui est attendu et donne une grille de compétences pour vous situer.
Comme vous n’aurez ni internet ni assistant IA le jour J, entraînez-vous au moins une fois à faire un exercice sans ces béquilles. Les annales des années précédentes, avec leurs corrigés, sont le meilleur outil pour ça.
Pour l’évaluation 2, la page Préparer l’évaluation 2 propose un plan de révision en cinq étapes, à suivre après la dernière séance.
Démarrer
Si c’est votre première séance, commencez par la page Démarrage : elle liste tout ce qu’il faut installer et configurer.
Contribuer à ce site
Ce site est ouvert : son code source est sur gitlab.com/remisharrock/typescript101.
Vous repérez une coquille, une explication obscure, un exemple qui ne compile plus ? Le lien « Edit this page » en haut à droite de chaque page vous amène directement à l’éditeur GitLab et vous permet de proposer une correction (merge request) sans rien installer. Les contributions sont les bienvenues et font partie de l’apprentissage du travail collaboratif.
Pour savoir comment ce site est écrit, relu et amélioré d’une année sur l’autre, et quelle place y tient l’IA : Comment ce cours est conçu.