Door Michel Vollebregt

Jabba the Hut, the sexy parts

Van Michel Vollebregt is onlangs een artikel in Java Magazine verschenen over TypeScript.

Lees hier hoe het kwam dat TypeScript zijn hart veroverde. WTF? Vloekend en tierend ramde ik op mijn toetsenbord. Waarom deed deze bij elkaar gekopieerde en in elkaar geflanste (gehackte) JavaScript niet wat ik wilde dat het deed? En waarom krijg ik het niet goed werkend in mijn Java Server Faces-applicatie? Van dit gerommel met code werd ik als Java Developer echt heel ongelukkig.

Vroeger

Toen ik begon met Java-programmeren was front-end-ontwikkeling niet bepaald mijn hobby. Gerommel met JavaScript, wat ik het predicaat ‘taal’ überhaupt niet waard vind. Ze hadden er zelfs een boek over geschreven: ‘JavaScript, the good parts’. Dat is zoiets als: ‘Darth Vader, the charming parts’ of ‘Jabba the Hut, the sexy parts’. ‘Nee, laat mij maar lekker Java ontwikkelen’, dacht ik. Java gaf mij voorspelbare code en ook strong typing. Dankzij die strong typing hoefde ik in mijn IDE maar een half woord te typen en vulde mijn IDE het vanzelf aan. Later kreeg ik er generic types bij. Supermooi, maar wel veel typewerk af en toe. Map<String, List<String>> dictionary = new HashMap<String, List<String>>(). Dat soort werk.

Scala

Toen kwam Scala. Scala gaf type inference. Strong typing without a lot of typing. Gaf ik een constante de waarde 3, dan snapte Scala wel dat het een integer was. En probeerde ik die constante dan later te gebruiken als string, dan kreeg ik vanzelf een compilatiefout.

Terug naar Frontend

In de tussentijd deed ik ook weer wat frontend-ontwikkeling. Ik had een tijdje met CoffeeScript gewerkt. Dat had weliswaar een iets mooiere syntax, maar het was in de kern nog steeds JavaScript. Ik was wat milder geworden, maar nog steeds niet super enthousiast. Totdat ik TypeScript leerde kennen.

TypeScript

Met TypeScript had mijn IDE aan een half woord weer genoeg. Ctrl-spatie en hij vulde aan en TypeScript snapte wat ik bedoelde. Gewoon let list = [[“hele”, 42.195], [“halve”, 21.098]]. TypeScript snapte wél uit zichzelf dat ik een lijst van tupels van string en integer wilde maken.

Moest ik later weer eens Java programmeren, dan baalde ik dat ik al die types voluit moest schrijven. Dat Java geen duck typing kent; en dan heb ik het nog niet eens gehad over union types, intersection types, literal types, enumeration types.

Dankzij TypeScript ben ik front-end-ontwikkeling echt leuk gaan vinden. Zo leuk, dat ik er een artikel over heb geschreven in Java Magazine en een online training voor gemaakt heb. Word jij er net zo enthousiast van? Dan nodig ik je uit om het artikel in Java Magazine te lezen en mee te doen aan de online training!

Relevante content

Ilionx logo