TypeScript heeft gewonnen. Dit is wat het ons heeft opgeleverd.
Niemand discussieert meer over het gebruik van TypeScript. Nieuwe frontend-projecten gebruiken het standaard. De discussie is voorbij. TypeScript heeft gewonnen.
Winnen is het saaie gedeelte. De echte waarde zit in wat types doen voor je workflow. Het is meer dan alleen het opvangen van typefouten.
Een functiesignatuur fungeert als documentatie. Deze veroudert nooit. Als de code verandert, faalt de build onmiddellijk door de compiler.
Kijk naar een functie die een herinnering plant. Je weet wat hij nodig heeft en wat hij retourneert zonder een enkele commentaar te lezen. Je ziet de exacte opties voor het communicatiekanaal. Als je een nieuw kanaal toevoegt, vertelt de compiler je precies waar je je code moet bijwerken. Een commentaar zou er gewoon blijven staan en onjuist worden.
Refactoren wordt veilig. In niet-getypeerde code is het hernoemen van een veld eng. Je zoekt naar strings en hoopt op het beste. In TypeScript verander je het type. De compiler geeft je een lijst van alles wat is gebroken. Refactoren is niet langer riskant; het wordt een veilige taak.
Types helpen je ook bij het gebruik van AI.
Wanneer je een AI vraagt om niet-getypeerde JavaScript te bewerken, raadt deze de vorm van het object. Wanneer je TypeScript gebruikt, is het type de specificatie. De AI weet precies wat is toegestaan. Fouten verschijnen als compileerfouten in plaats van crashes in productie. Types veranderen gegenereerde code in code die past.
Mensen zeiden vroeger dat types je vertragen. In een AI-workflow versnellen types je juist. Ze fungeren als vangrails. Je kunt gegenereerde code met vertrouwen accepteren in plaats van elke regel handmatig te controleren.
Schrijf betere types met deze regels:
- Gebruik unions in plaats van meerdere booleans. Een status zoals
"loading" | "error" | "ready"is beter dan drie afzonderlijke flags. - Geef je domeintypes een naam. Het gebruik van een type zoals
Centsin plaats van een gewoon getal toont je intentie aan. - Vermijd
any. Gebruikunknownen verfijn het type (narrowing). Hetany-keyword vernietigt je vangnet. - Laat inference het werk doen. Annoteer niet alles. Annoteer je grenzen en laat de rest vloeien.
TypeScript heeft codebases veranderd in expliciete contracten. Deze contracten maken angstloos refactoren en betrouwbare AI-ondersteuning mogelijk.
We zijn types gaan gebruiken om bugs te stoppen. We blijven ze gebruiken omdat ze de fundering vormen voor de rest.
Bron: https://dev.to/parsajiravand/typescript-won-heres-what-that-actually-bought-us-53lo
Optionele leercommunity: https://t.me/GyaanSetuAi
