Le cas d'école JQuery de Javascript représente, je pense, bien un autre problème non abordé des dépendances : La lourdeur inutile ou inefficience.
Typiquement en Javascript, on a longtemps eu le problème de la compatibilité du code entre Mozilla Firefox et IE de Microsoft. Pour régler ce problème est arrivé JQuery, qui a vraiment été une bénédiction. Avec lui tout devenait facile. Il a même inventé des choses génial pour parcourir le DOM ou le modifier... Oui mais cela avait un coup en terme de perfs... et il a été sur-utilisé... pire 2 librairies peuvent dépendre de JQuery mais de versions différentes, résultat le navigateur est obligé de charger les 2 différentes ce" qui est autant de coût en terme de réseau (Pas de cache), de RAM et même de processeur.
Heureusement, IE, s'est mis à respecter les standard et en plus Javascript s'est amélioré et à intégré des fonctionnalité JQuery... mais les développeurs continue a l'utiliser alors qu'il n'apporte plus grand chose. Enfin au moins dans la plupart des cas.
En Rust ce problème ce retrouve un peu moins au niveau de l'exécution proprement dites car c'est compilé... cependant cela se retrouve au niveau du temps de compilation (et calcul de dépendances) et surtout cela se retrouve en terme de lourdeur. Pour prendre l'exemple des Regexp, est-il bien nécessaire d'embarquer tout le code hyper optimisé de regexp avec cache si comme tu le dis un split ou deux suffisent. Parce que certes le binaire n'embarquera pas le code mort, mais toutes la gestion de cache et des optims ne sont pas du code mort juste du code qui n'a aucun intérêt pour un cas simple
Sous licence Creative common. Lisez, copiez, modifiez faites en ce que vous voulez.
# Le cas d'école JQuery de Javascript
Posté par abriotde (site web personnel, Mastodon) . En réponse au journal Mon inquiétude sur les dépendances en Rust. Évalué à 5. Dernière modification le 02 juillet 2024 à 23:46.
Le cas d'école JQuery de Javascript représente, je pense, bien un autre problème non abordé des dépendances : La lourdeur inutile ou inefficience.
Typiquement en Javascript, on a longtemps eu le problème de la compatibilité du code entre Mozilla Firefox et IE de Microsoft. Pour régler ce problème est arrivé JQuery, qui a vraiment été une bénédiction. Avec lui tout devenait facile. Il a même inventé des choses génial pour parcourir le DOM ou le modifier... Oui mais cela avait un coup en terme de perfs... et il a été sur-utilisé... pire 2 librairies peuvent dépendre de JQuery mais de versions différentes, résultat le navigateur est obligé de charger les 2 différentes ce" qui est autant de coût en terme de réseau (Pas de cache), de RAM et même de processeur.
Heureusement, IE, s'est mis à respecter les standard et en plus Javascript s'est amélioré et à intégré des fonctionnalité JQuery... mais les développeurs continue a l'utiliser alors qu'il n'apporte plus grand chose. Enfin au moins dans la plupart des cas.
En Rust ce problème ce retrouve un peu moins au niveau de l'exécution proprement dites car c'est compilé... cependant cela se retrouve au niveau du temps de compilation (et calcul de dépendances) et surtout cela se retrouve en terme de lourdeur. Pour prendre l'exemple des Regexp, est-il bien nécessaire d'embarquer tout le code hyper optimisé de regexp avec cache si comme tu le dis un split ou deux suffisent. Parce que certes le binaire n'embarquera pas le code mort, mais toutes la gestion de cache et des optims ne sont pas du code mort juste du code qui n'a aucun intérêt pour un cas simple
Sous licence Creative common. Lisez, copiez, modifiez faites en ce que vous voulez.