ESM motivatie
parent
e9f89f1933
commit
6ff63973b9
1 changed files with 13 additions and 5 deletions
|
@ -2,13 +2,21 @@
|
||||||
|
|
||||||
### Programmeertaal
|
### Programmeertaal
|
||||||
|
|
||||||
Dit project wordt geschreven in TypeScript (TS). De klant vroeg een project in JavaScript (JS) of TS. Er werden de volgende overwegingen gemaakt:
|
|
||||||
|
|
||||||
**TS in plaats van JS?**
|
**TS in plaats van JS?**
|
||||||
|
|
||||||
- :white_check_mark: Statische typering laat ons toe om typegerelateerde fouten at compile time op te vangen ("type safety").
|
Dit project wordt geschreven in TypeScript (TS). De klant vroeg een project in JavaScript (JS) of TS. Er werden de volgende overwegingen gemaakt:
|
||||||
|
|
||||||
|
- :white_check_mark: Statische typering laat toe om typegerelateerde fouten *at compile time* op te vangen ("type safety").
|
||||||
- :white_check_mark: (Meer) ondersteunende tooling zorgt voor een fijnere developer-ervaring.
|
- :white_check_mark: (Meer) ondersteunende tooling zorgt voor een fijnere developer-ervaring.
|
||||||
- :white_check_mark: Door een future-proof programmeertaal te kiezen is ons project klaar voor de toekomst.
|
- :white_check_mark: Door een future-proof programmeertaal te kiezen is het project klaar voor de toekomst.
|
||||||
- :negative_squared_cross_mark: Het team heeft een kleine leercurve te gaan.
|
- :negative_squared_cross_mark: Het team heeft een kleine leercurve te gaan.
|
||||||
|
|
||||||
Uiteindelijk wogen de voordelen zwaarder door dan de nadelen, en werd er voor TS gekozen.
|
Uiteindelijk wogen de voordelen zwaarder door dan de nadelen en werd er voor TS gekozen.
|
||||||
|
|
||||||
|
**ECMAScript Modules (ESM) in plaats van CommonJS (CJS)**
|
||||||
|
|
||||||
|
Dit project maakt gebruik van ESCMAScript Modules (ESM). Er wordt geen gebruik gemaakt van CommonJS (CJS) omdat:
|
||||||
|
|
||||||
|
- ESM wordt als (meer) future-proof gezien dan CJS. Zo kan dit project langer ontwikkeld worden zonder ernstig *refactoring*.
|
||||||
|
- ESM is deel van de ECMAScript specificatie, waardoor er tijdens de ontwikkeling teruggevallen kan worden op bestaande specificaties als dat nodig is.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue