Pourquoi ne pas simplement embrasser les derniéres syntaxes ecmascript 6 et 7 et même TypeScript qui permet le typage ? Lors de la transpilation, les erreurs sur les types sont remontés, une fois le code transpilé il n’y a plus de types, c’est du es3
1. Les outils
VS code (Licence MIT), nos cher amis de chez Microsoft on fait un effort: debuggage avec point d’arret sous NodeJS, suggestions sur les types persos, info des types des varaibles lors du survol, erreurs intégrés dans l’UI, etc…
Babel, pour transpiler ce qui a encore besoin de l’être, par ex les .js statiques des UIs, nettoyer, reformater comme on le souhaite.
electron, pour les UIs, c’est un NW.js en mieux, permet de séparer le code web du code nodejs (différents threads), avec une énorme communauté puisque c’est un projet des gars de github, et peux permettre d’être vu (donc aflux de devs) sur leur page d’apps…
2. Le typage statique
Syntaxe de classes, propriétés privées, statiques, décorateurs de membres, propriétés calculées, immport/export etc…
Le tout est transpilé si et seulement si il n’y pas d’erreur de types, et le code final sans type est assuré de fonctionner.
C’est le futur javascript, les runtime acceptent de plus en plus l’es6 et 7
3. Les contributeurs potentiels connaissent plutôt C++
4. La crédibilité
Il faut dire que c’est fait en ecmasript 6 ou TypeScript, hop ça fait plus pro, seuls les “personnes qui cherchent à comprendre le fond et à maîtriser les détails” connaissent l’ecma et les specifications en early stage, le TypeScript, le fonctionnement d’une machine virtuelle js ou encore comment marche le GarbageCollector… Ce sont des afficionados de languages orientés objet, …
La communauté javascript++ grandi d’heure en heure !
Et puis c’est la classe d’être LE projet de blockchain fait en majorité en full web !!
5. La vitesse d’exécution
Là je sais pas trop… Il parait que Node est un champion du multi-threading, clustering et micro-tasking…