Interface

Interface · Koodaus

Lyhyesti

TypeScriptin tapa määritellä objektin rakenne eli mitä kenttiä ja tyyppejä se sisältää.

Interface on TypeScriptin tapa määritellä objektin rakenne: mitä kenttiä sillä on ja minkä tyyppisiä ne ovat. Interfacet ovat erityisen tärkeitä vibekoodauksessa, koska ne auttavat tekoälyä ymmärtämään mitä dataa koodi käsittelee ja millaisia arvoja odotetaan. TypeScriptissä on myös type-avainsana, joka toimii samankaltaisesti — ero on pieni: interface tukee laajentamista (extends) ja on parempi objektien rakenteille, kun taas type sopii unioneihin ja yksinkertaisempiin tyyppeihin. Käytännössä React-komponenttien propsit, API-vastaukset ja tietokantamallit määritellään usein interfaceilla, jolloin virheet löytyvät jo ennen koodin ajamista.

Esimerkkejä

interface User { id: string; name: string; email: string; }

interface ButtonProps { label: string; onClick: () => void; disabled?: boolean; }

interface BlogPost extends BaseContent { tags: string[]; author: User; }

function getUser(id: string): Promise<User> { ... }

interface ApiResponse<T> { data: T; error?: string; } — geneerinen interface