Yahoo refuse tous les emails du site. Si vous avez une adresse chez un autre prestataire, c'est le moment de l'utiliser ;)

En cas de soucis, n'hésitez pas à aller faire un tour sur la page de contact en bas de page.

Topic "JavaScript mon amour"

Flux RSS des posts récents dans ce topic ( Flux Atom)


Photo de profil de skywodd

skywodd

Membre

Membre du staff

#364 | Signaler ce message


Ce message fait suite à cet autre message. Je ne voulais pas polluer le topic d'origine avec ce hors sujet sur JavaScript.

Dommage de troller comme ça sur le JavaScript qui est aujourd'hui un langage qui a bien évolué. Il reste des problèmes liés à des erreurs de jeunesse, mais je t'assure que le JavaScript est aujourd'hui un langage qui sert un peu plus qu'à ajouter de l'interactivité aux sites web.

par juliensnz

Je ne troll pas. Je dis véritablement ce que je pense de JavaScript. Et on peut dire sans hésitation que je déteste JavaScript (ou plus précisément, son écosystème).

La dernière fois que j'ai voulu faire un projet (simpliste) en JavaScript :

  • Je me suis retrouvé avec un projet NPM contenant plus de 300 dépendances. Dont la plupart, après rapide vérification des sources, se limitent à 10 lignes de code. J'aurai pu littéralement copier-coller le code de ces dépendances dans un Tweet. Ce n'est pas un troll, c'est un fait.

    N.B. A l'origine, je voulais juste faire un Hello World / Todo list en Node.JS + React. J'ai eu le malheur de lancer un quickstart incluant "babel". Je ne sais toujours pas ce qu'inclut cette bibliothèque, mais … quelle horreur.

  • La syntaxe JavaScript est une horreur, doublé d'une insulte aux bonnes pratiques. C'est tellement bien fait qu'on arrive aujourd'hui au point où il existe des langages intermédiaires générant du JavaScript, pour ne pas avoir à écrire directement en JavaScript.

  • JavaScript a de loin, la communauté la moins organisée et la plus **bizarre** que j'ai jamais vu.

    Tout le monde est expert en **insérer ici le nom de la dernière mode JS**, mais personne n'est capable de faire une explication claire de l'état de l'art actuel. A croire qu'il n'y a jamais de truc stable en JavaScript (ce que je commence sérieusement à penser).

  • Le lundi une nouveau truc apparaît en beta 1.0.0.

    Le mardi c'est #1 sur tous les sites d'informatiques.

    Le mercredi "c'est l'avenir du web".

    Le jeudi tout le monde l'utilise (en râlant sur les bugs et sur le fait que c'est une beta).

    Le vendredi c'est deprecated.

    Le Week-End efface les historiques et le lundi suivant tout recommence.

Je peux comprendre qu'il y ait eu des erreurs de conception. C'est normal, c'est humain.

Python (par exemple) est bourré d'erreur de jeunesse ou de décisions foireuses. Ce n'est pas pour rien qu'avec la version 3, les dév ont tout remis à plat sur la table pour repartir sur des bases saines.

JavaScript au contraire, la logique c'est "ajoutons une rustine sur la rustine, tant pis si ça se décolle du pneu avec le temps".

A mes yeux, JavaScript manque de professionnalisme, de stabilité et d'une vision claire de l'avenir du langage. Le pire dans l'histoire c'est qu'il y a de bons (très bons) points pour JavaScript.

Maintenant, avec l'inertie technologique, à moins de complètement abandonner JS pour un truc revu de zéro, conçu sur les bases apprises du passé. C'est mort. Il suffit de voir le mal qu'a eu Python 3 avant de finalement prendre le dessus sur Python 2 pour s'en convaincre. Faire du "similaire, mais en mieux", c'est voué à l'échec avec JavaScript.

Il commence à être utilisé un peu partout et des subset du genre de typescript permettent de le rendre vraiment puissant.

par juliensnz

C'est bien ça le problème #1 de JavaScript.

Tout le monde est d'accord pour dire qu'il y a des erreurs de conception. Mais tout le monde s'entête à vouloir mettre du JavaScript partout sans modifier quoi que ce soit.

Comme dirait les Anglais : GET YOUR SHIT TOGETHER.

Quand on a une vitre cassée dans un programme, la première chose à faire c'est de la réparer avec de poser une nouvelle fenêtre, pas de casser les vitres des nouvelles fenêtres pour que ça aille ensemble.

Perso je suis un développeur "backend" à l'origine et je trouve le JavaScript très intéressant. Toi même faisant du web, tu devrais arrêter de considerer qu'il y a deux mondes et plus voir ça comme un tout :)

par juliensnz

Ça fait bien longtemps que (à mon grand regret) back-end et front-end ont fusionné. Je ne peux que constater le massacre.

Back-end et front-end ont toujours travaillé en duo, mais chacun dans son coin. C'est comme un menuisier (front-end) et un bûcheron (back-end), l'un ne peut pas travailler sans l'autre. Maintenant, demande à un bûcheron de te faire une table basse. Je ne suis pas sûr du résultat avec une tronçonneuse ;)

L'informatique c'est devenu de la folie. De la folie pure et simple.

Derniére modification le par skywodd


Pas de photo de profil

Machin

Membre

#367 | Signaler ce message


Bonjour, Je passais par hasard en cherchant des infos sur de l'Arduino, et je suis tombé sur cet article dont le titre m'a laissé pressentir comme un ressentiment plus ou moins voilé envers ce bon vieux JS. Du coup ça m'a donné bêtement envie de rajouter mon grain de sel anecdotique au débat.

Globalement d'accord à un petit bémol près, je serais moins sévère sur la langage JavaScript lui-même. Il n'est pas exempt de défauts, mais on n'est pas obligé de se vautrer dedans. Personnellement je le trouve plutôt expressif, raisonnablement puissant (toutes chose égales par ailleurs) et surtout "fun", sisi.

En revanche l'écosystème est à se flinguer. Je ne voudrais pas être développeur professionnel obligé de choisir entre une tétrachiée de frameworks et librairies tous annoncés comme miraculeux mais en constante évolution. Cela dit il ne faut pas oublier que derrière tout ça c'est malgré tout du bizness, quoi qu'on en dise, opensource ou pas.

Un petit mot sur node.js et son mode non bloquant, si merveilleux selon tout le monde ou presque. Je ne dis pas qu'il ne s'agit pas de l'invention la plus merveilleuse depuis la découverte du fil à couper le beurre, mais je dois avouer qu'un gazillion de callbacks imbriqués, au bout d'un moment ça devient difficile à suivre. Et il est amusant de constater que de Q à Fiber en passant par Meteor ou Bluebird, des librairies et ce framework(Meteor) on été développés pour transformer au niveau de la programmation de l'asynchrone en synchrone. Curieux, mais probablement quelque chose m'échappe. Voilà, c'était mes 2 centimes d'euros sur le sujet(plus ou moins). Cordialement.


Photo de profil de skywodd

skywodd

Membre

Membre du staff

#381 | Signaler ce message


Globalement d'accord à un petit bémol près, je serais moins sévère sur la langage JavaScript lui-même. Il n'est pas exempt de défauts, mais on n'est pas obligé de se vautrer dedans. Personnellement je le trouve plutôt expressif, raisonnablement puissant (toutes chose égales par ailleurs) et surtout "fun", sisi.

par Machin

Le langage en lui même n'est pas mauvais. C'est un Java-like comme il en existe d'autres.

Mais il y a quand même pas mal de trucs crades, surtout autour de l'aspect orienté-objets ajouté en mode "ça passe ou ça casse". Exemple : les prototypes … c'est une horreur (heureusement ça évolue en bien avec ECMAScript 6).

Il y a des défauts comme tout langage. C'est juste qu'en Javascript, il y en a un paquet de gamelles à éviter et avec l'aspect multi-plateforme des navigateurs, ça aide vraiment pas.

Un petit mot sur node.js et son mode non bloquant, si merveilleux selon tout le monde ou presque. Je ne dis pas qu'il ne s'agit pas de l'invention la plus merveilleuse depuis la découverte du fil à couper le beurre, mais je dois avouer qu'un gazillion de callbacks imbriqués, au bout d'un moment ça devient difficile à suivre.

par Machin

Je suis (enfin, j'étais) développeur Android, les callbacks imbriqué je connais. C'est même (en partie) pour ça que j'ai envoyé valsé le tout avec la sortie de Android 6.

Les callback c'est sympa, mais après trois callback imbriqués, ça devient un anti-pattern :/