C’est clairement un lange incompris. En ce qui concerne les performances tout dépend de l’implementation du développeur
Hélas, non.
C’est un langage dont la lenteur est causée par ses paradigmes intrinsèques. Donc c’est incurable.
Les implémentations « performantes » sont loin des langages efficients. Et encore, optimisés à coup de « tricks » complexes qui apportent chacun leurs lots de « revers de la médaille ».
Rappelons un très vieux principe des langages de programmation : pour qu’un langage soit vraiment performant, il faut qu’il soit conçu dès le départ dans ce but.
Il faut bien comprendre que ce qui différencie la technique de la magie, c’est que dans la technique on ne peut pas obtenir tout en même temps. Tout implique un prix à payer.
Un petit example de Javascript avec du typage, décorateurs:
Passez moi le sac à vomi…
IMHO, Javascript, ça ressemble à un savant mélange de zombie et de franckenstein.
L’évolution dans le temps de ce langage me fait furieusement penser à une tronçonneuse, un rouleau de ruban adhésif pour y coller des morceaux de cadavre récupérés dans un conteneur à ordures. Avec l’odeur, la sueur et le gout qui vont avec.
Quand à vouloir reprendre de vieux projets écrits dans ce langage, ça donne clairement l’impression de fouiller dans un cadavre en décomposition avancée ou il faut se retrouver dans un bon gros tas d’asticots qui grouillent.
Je ne parle même pas de la dimension qu’on peut atteindre quand un stagiaire est viens foutre le bordel dans le code… avant de se suicider.
Aujourd’hui il y a des Framework comme VueJS, Angular, React, des outils comme Webpack, babel, eslint, Flow qui permettent de tirer tout le potentiel de Javascript.
Tirer le potentiel… ou le dernier souffle de vie du cadavre ?
Les framework ont le mérite de cacher la misère d’un langage/environnement pas bien fichu. Hélas au prix d’un gaspillage supplémentaire de ressources CPU.