
Envoyé par
codec_abc
Le principal avantage de Typescript c'est le typage statique (ie, détecté les erreurs - au moins une partie - avant l’exécution) et à moins d'avoir raté un épisode je crois pas que les prochaines versions de Js s'orientent dans cette voie. Donc il y a aura toujours quelque chose que Ts fera que Js ne fera pas. Après, libre à chacun d'estimer le gain ou la perte d'un système de type statique vs dynamique. Pour moi le choix est vite fait, à partir de plus de 20 lignes de code je vois déjà l’intérêt.
Je ne pense pas que c'est que statique vs dynamique. Je travaille avec JS / C# et Typescript. Je peux te dire que le typescript ressemble plus a C# que Javascript.
La facont dont tu ecris le code est completement different.
Apres les erreurs avant et apres, tu les auras forcement dans tous les language, c'est pour sa qu'on se fait chier a faire des logs, des try-cactch, des proxy pattern, etc ...
Javascript est plus proche du fonctionnal programming, alors que typescript est plus proche de l'imperative.
Pour avoir essayer de creer une framework sous Javascript et sous Typescript, il y a une
*** grosse difference. Dans Typescript tu as cette motion d'encapsulation alors que Javascript c'est derisoire. La syntax est aussi un peu different quand on regarde bien. Et la compilation joue un mega role super important qui permet a un developpeur de pouvoir regler les erreurs basique de programmation tel que la syntax ou le type. Mais le type tu peux tricher. C'est justte que c'est plus simple que le compilateur me crache a la geule que je fasse des erreurs d'utilisation de mes fonctions. Et puis le compilateur joue un autre role que le developpeur ne voit pas souvent, il optimise ton code a mort. Par exemple, imaginons que ce projet (
prepack) marche, il peut tres bien etre integrer au compilateur typescript. Le compilateur c'est pas que verifie les erreurs. Google par exemple ompile different versions de Chrome pour differentes platforme car tu as besoin d'optmiser la memoire pour cetaine machine, mais d'autre la performance. Voir cette
video lighthouse. Et le compilateur tyepscript fera sa dans le futur pour cibler quel type d'optimisation tu as besoin.
Apres ES6 a apport e le sugar syntax de la creation de classe, c'est avoir PHP 4 avec le systeme de classe qui est apparu mais n'est pas encore totalement bien foutu. Par example mettre en private les variables dans une classe c'est chiant.
Tu vas me dire qu'on a pas besoin de l'encapsulation dans un code Javascript puisque de toute facon a acces au code et on doit toujours proteger les transaction clients / serveur par de meilleurs controle cote serveur.
Sauf que cette reflexion ne s'applique pas que je fais un jeu mobile ou un RPG avec RPG maker MV par exemple, j'ai besoin de cacher des information pour eviter que le joueur cheat par exemple ou encore avec Electron, les applications offline en gros.
Je me rappelle encore des gens qui me disaient il y a 5 ans que c'etait une heresie de voir le terme class dans Javascript ou encore PHP 6 avait ete anule parce que le comite ne voulait pas de typage fort, ben il est dans PHP 7 pas grave.
ES8 n'est pas encore sur papier et ES7 n'est pas encore termine ou meme pas commence. Et quand tu regardes les
propositions de ES7,
surtout celui la, tu vois qu'il devient, sur certains aspects, le meme que les autres langages.
Javascript evolue plus dans le sens de NodeJS pour servir NodeJs que pour servir Javascript Client. Parce que demain on va faire des software avec electron, des jeux en Javascript pour les plateformes. Le single thread principle de NodeJS va peut etre disparaitre. D'ailleurs Google a choisi Typescript parce que la syntax actuel de Javascript est super complique pour faire ce qu'il veut faire avec angular JS 2 et 4.
En fait, on te l'a pas dit mais Javascript c'est le nouveau Java ^^.
1 |
0 |