Waarom TypeScript?
Last updated
Last updated
JavaScript is over de jaren heen gegroeid tot de meest gebruikte taal voor webapplicaties op het internet. Je kan dus JavaScript gebruiken voor front- en backend en wordt deze taal tegenwoordig zelfs gebruikt voor standalone applicaties (mobile en desktop). Maar eigenlijk was het nooit de bedoeling geweest om met JavaScript grote en complexe systemen te bouwen.
Leuk weetje: JavaScript was gemaakt in 1995 door Brandan Eich in 10 dagen tijd. Uiteraard is JavaScript over de jaren heen nog veel geëvolueerd, maar het was nooit de bedoeling dat deze taal zou uitgroeien tot de taal van het internet. Het draagt dus na al die jaren nog veel van de nadelen van het prille begin mee.
Er zijn ondertussen heel wat nieuwe versies van JavaScript gepasseerd die heel wat problemen en missende features hebben toegevoegd. Deze versies worden meestal aangeduid met de letters ES gevolgd door een jaartal of nummer. Zo is ES6 de meest ondersteunde versie van JavaScript. Deze versie introduceerde concepten zoals Classes die object georiënteerd programmeren mogelijk maken in JavaScript (op een gelijkaardig manier als in C#). Zie later voor meer details hierover!
De enige toevoeging die niet aanwezig is die JavaScript tot het niveau van een programmeertaal kan krijgen zoals C# of Java is het toevoegen van types. Door de toevoeging van types wordt het mogelijk sneller fouten op te sporen en wordt de code over het algemeen leesbaarder en meer begrijpbaar. Om types te introduceren heeft Microsoft een nieuwe taal ontworpen genaamd TypeScript. Eigenlijk is TypeScript geen nieuwe taal maar een superset van JavaScript (versie ES6). Dit betekent dat alle features die in JavaScript (ES6) zitten ook in TypeScript zitten. Dus alle code die je in JavaScript zou schrijven is ook geldig voor TypeScript, maar niet andersom.
Je vraagt je dan misschien af. Kunnen browsers (of node.js) dan ook gewoon TypeScript interpreteren en uitvoeren? Het antwoord hier op is jammer "Nee". We moeten hiervoor een TypeScript compiler gebruiken om alle TypeScript code om te zetten naar gewone JavaScript code. Deze code zal dan wel uitvoerbaar zijn. We zien later hoe we dit gaan doen.
In de bovenstaande tabel lijkt JavaScript nog altijd duidelijk de populairste optie van de twee. Je vraagt je waarschijnlijk wel af waarom we dan niet gewoon JavaScript zien. Het antwoord is hier heel eenvoudig. Het is beter om eerst de goede gewoontes van TypeScript aan te leren, en dan over te schakelen naar het lossere JavaScript. Andersom is veel lastiger, slechte gewoontes leer je nu eenmaal niet snel af. En vergeet niet, de verschillen zijn in principe minimaal, en alles wat je leert voor TypeScript is zeer eenvoudig over te zetten naar JavaScript. Eigenlijk leer je in deze cursus twee talen in 1 klap!