Skip to content

Latest commit

 

History

History
117 lines (104 loc) · 3.73 KB

README.md

File metadata and controls

117 lines (104 loc) · 3.73 KB

Atelier Typescript avancé

meme typescript

Bienvenue dans l'atelier Typescript avancé.

Nous allons voir quelques uns des concepts avancés de Typescript. Ces concepts ont généralement pour but de "réduire" le type de nos variables à un type le plus précis possible (celui qui la représente le mieux ou celui qui ne contient que ce dont on a besoin). "Réduire" un type permet de bénéficier d'une meilleure (parfaite!) autocomplétion et de détecter des erreurs à la compilation (plutôt qu'une fois le projet en production).

Des erreurs se glissent dans le code de cet atelier, c'est normal. Elles sont destinées à êtres corrigées au fur et à mesure. Le code complété et annoté en fonction des questions se trouvera sur les branches présentation/<date de la présentation>.

Ce dépôt peut également évoluer en fonction de vos interrogations ou de l'évolution du langage.

Sommaire

  1. Introduction et notations
    1. tsconfig.json
    2. Notation des fonctions
    3. Interfaces et Types
    4. Types anonymes
  2. any et typage
    1. any
    2. any implicite
    3. as
    4. unknown
    5. Type guards
    6. Type guards avec "predicate"
  3. Generics
    1. Generics
  4. let, const ou readonly
    1. let
    2. const
    3. readonly
    4. as const
  5. Tuples
    1. Les tuples
  6. Destructuring et spreading
    1. Destructuring
    2. Spreading
  7. Unions
    1. Eviter le type string
    2. Unions VS Enums
    3. Discriminated unions
    4. Conversion en union
  8. Intersections
    1. Intersections
  9. never
    1. never
  10. Utility types
    1. Omit
    2. Pick
    3. Readonly
    4. Partial
    5. Required
    6. Exclude
    7. Extract
    8. Autres types et en apprendre plus

Exécutez les tests

Je vous suggère d'éxécuter les tests unitaires lors de la progression de cet atelier avec la commande :

npm run test

Extensions VSCode

Je recommande d'installer l'extension "Twoslash queries" qui permet d'afficher le type d'une variable en utilisant ce commentaire en dessous : // ^?. Par exemple :

const duchesse = { nom: 'Duchesse', age: 7 };
//    ^?