Sofiane Boumedine Lexique Dev

Interface vs Type

TypeScript 🟢 Junior

Type : Concept

Definition

Interface et type alias definissent tous deux des formes d'objets, mais interface supporte la declaration merging et l'extension, tandis que type supporte les unions, intersections et types primitifs.

Analogie

Interface : un contrat extensible avec des avenants possibles. Type : une definition figee mais plus flexible dans ce qu'elle peut decrire.

Exemple de code

interface Animal { name: string; }
interface Animal { age: number; } class="cmt">// merge OK

type ID = string | number; class="cmt">// union impossible avec interface
type Point = { x: number } & { y: number }; class="cmt">// intersection

Cas d'usage

Utiliser interface pour les contrats d'API publiques (extensibles), type pour les unions et types complexes.

coreinterview-question