TypeScript : types vs interface
La question revient, encore et encore…
J'ai cherché, j'ai trouvé, j'ai résumé et vous allez comprendre leurs différences
Pour ça, je vous ai fait un article et je vous partage un résumé ici
codelynx.dev/posts/typescript-type-vs-interface
1. On peut étendre une interface en recréant une interface avec le même nom
C'est un peu étrange. Je n'aime pas ce pattern.
Avec les types tu as une erreur.
2. Les interfaces peuvent étendre les classes
Tu peux extraire le type d'une classe et créer une nouvelle interface avec des propriétés supplémentaires.
Je n'utilise jamais ce pattern.
3. La flexibilité
Avec les types tu peux les assigner à des tuples, union et intersection.
4. Les tableaux
La syntaxe pour déclarer un tableau est largement plus bg avec les types
En conclusion, je vois un peu les interfaces comme des types qui ne peuvent qu'être des objets qui possèdent des types.
Tu devrais utiliser quoi ?
C'est un avis personnel. Il faut essayer d'être un maximum consistent.
C'est-à-dire ne pas s'amuser à utiliser une fois un type, une fois une interface et mixer les deux dans ma codebase.
Je conseille `type` car il permet de faire plus de choses.
J'ai très très très résumé dans ce thread,
Je te conseille d'aller voir l'article dans lequel tu trouveras de meilleures explications et des exemples plus marquants : codelynx.dev/posts/typescript-type-vs-interface !
À bientôt, merci d'avoir lu.
J'ai changé quelques trucs sur le blog, n'hésite pas si tu as des remarques !