Technisch · 4 min lezen
TypeScript
TypeScript is een programmeertaal die JavaScript uitbreidt met typecontrole. Je schrijft vooraf op wat voor data een variabele mag bevatten, zodat fouten al in je editor opduiken en niet pas als een bezoeker er tegenaan loopt.
Inhoudsopgave
Je bouwt een website en na een paar maanden groeit het project. Drie developers werken aan dezelfde codebase, functies worden hergebruikt in onderdelen die niemand meer helemaal kent. Dan verandert iemand de naam van een veld en twee pagina's later crasht de checkout. Dat is precies het scenario waarvoor TypeScript is gemaakt.
JavaScript met een vangnet eronder
JavaScript is flexibel: je kunt een variabele aanmaken zonder te zeggen wat erin zit. Dat werkt prima voor kleine scripts, maar wordt een risico zodra een project groeit. TypeScript voegt een extra laag toe: je schrijft vooraf op wat voor data een variabele mag zijn. Een functie die een getal verwacht, accepteert geen tekst, en je editor laat dat direct zien met een rode onderstreping.
TypeScript is open source en wordt actief onderhouden door Microsoft. De taal compileert naar gewoon JavaScript, dus de browser ziet het verschil niet. Wat je wel ziet: minder bugs die pas in productie opduiken, betere automatische suggesties in je editor en code die je drie maanden later nog kunt lezen.
Wat er misgaat zonder TypeScript
In kleinere projecten valt het mee, maar zodra een codebase groeit, komen typische problemen terug:
- Een functie wordt aangeroepen met de verkeerde argumenten. JavaScript geeft geen fout, de pagina toont gewoon de verkeerde data.
- Een veld in een API-response verandert van naam. Alle code die dat veld gebruikt faalt, maar je vindt het pas als je de pagina opent.
- Refactoren wordt gevaarlijk: je verplaatst iets en weet niet zeker of je alles geraakt hebt.
Met TypeScript vangt de compiler al deze situaties op voordat de code de browser bereikt.
Zo herken je TypeScript in een project
TypeScript-bestanden eindigen op .ts of .tsx. Je herkent TypeScript ook aan de tsconfig.json in de root van het project. De meeste moderne webframeworks, waaronder Astro en Angular, zijn geschreven in TypeScript en verwachten ook TypeScript van jou.
Een CMS als EmDash genereert automatisch TypeScript-types uit je schema, zodat je contentvelden altijd kloppen. Als je een website laat maken overweegt voor een groter project, is TypeScript tegenwoordig de standaard in elk serieus webdesign -bureau.
Wanneer heeft TypeScript zin?
Voor een eenvoudige landingspagina voegt TypeScript weinig toe. Maar zodra je samenwerkt met andere developers, een webshop bouwt, of een project dat over een jaar nog onderhouden moet worden, is TypeScript geen luxe. Het is de vloer waarop je veilig kunt bouwen.
Veelgestelde vragen
Wat is het verschil tussen TypeScript en JavaScript?
JavaScript kent geen vaste types: een variabele kan op elk moment van getal naar tekst wisselen. TypeScript voegt typecontrole toe zodat je vooraf vastlegt wat een variabele mag bevatten. Die controle verloopt in de editor; de browser ontvangt uiteindelijk gewoon JavaScript.
Moet ik TypeScript leren als ik JavaScript al ken?
De overstap is kleiner dan hij lijkt. TypeScript is een uitbreiding van JavaScript, dus alle bestaande JavaScript-code is geldige TypeScript. De meeste moderne frameworks verwachten TypeScript, dus het loont.
Is TypeScript verplicht in Astro of React?
Niet verplicht, maar sterk aanbevolen. Astro en React ondersteunen TypeScript van huis uit en genereren automatisch types voor je componenten en content. De tooling is ontworpen rondom TypeScript.
Maakt TypeScript een project langzamer?
Het compileren kost een paar seconden bij het bouwen. Dat merk je niet tijdens het browsen: de browser ontvangt gewoon JavaScript. Voor de developer betekent TypeScript juist sneller werken omdat de editor fouten direct aanwijst.
Wanneer is TypeScript te zwaar voor een project?
Voor een eenvoudige landingspagina of kleine website van vijf pagina's is de setup meer werk dan het oplevert. Maar voor een webshop of maatwerk-applicatie: altijd TypeScript.
Veelgestelde vragen
Wat is het verschil tussen TypeScript en JavaScript?
JavaScript kent geen vaste types: een variabele kan op elk moment van getal naar tekst wisselen. TypeScript voegt typecontrole toe zodat je vooraf vastlegt wat een variabele mag bevatten. Die controle verloopt in de editor; de browser ontvangt uiteindelijk gewoon JavaScript.
Moet ik TypeScript leren als ik JavaScript al ken?
De overstap is kleiner dan hij lijkt. TypeScript is een uitbreiding van JavaScript, dus alle bestaande JavaScript-code is geldige TypeScript. De meeste moderne frameworks verwachten TypeScript, dus het loont.
Is TypeScript verplicht in Astro of React?
Niet verplicht, maar sterk aanbevolen. Astro en React ondersteunen TypeScript van huis uit en genereren automatisch types voor je componenten en content.
Maakt TypeScript een project langzamer?
Het compileren kost een paar seconden bij het bouwen. De browser ontvangt gewoon JavaScript. Voor de developer betekent TypeScript juist sneller werken omdat de editor fouten direct aanwijst.
Wanneer is TypeScript te zwaar voor een project?
Voor een eenvoudige landingspagina van vijf pagina's is de setup meer werk dan het oplevert. Maar voor een webshop of maatwerk-applicatie die lang onderhouden wordt: altijd TypeScript.
Gerelateerde begrippen
Klaar voor een website die klanten oplevert?
Vertel kort wat je nodig hebt. Je krijgt binnen 24 uur een eerlijk antwoord en een vaste prijs.