Bonjour,
C'est intéressant comme étude, même si le résultat et la méthodologie laissent encore à désirer.
Certains langages permettent d'économiser du temps de développement, donc si le développeur a besoin de moins d'efforts pour coder il consomme donc lui-même moins d'énergie. Ensuite, il y a tout ce qui est annexe, et consommateur également : compilation, installation de plateforme, conception du projet, utilisation des éditeurs de code, tests/débogage, phases d'évolution/correction/maintenance du projet, donc grosso-modo si nous voulions vraiment être plus précis il faudrait prendre tout cela en compte dans le bilan énergétique "global". Car le temps passé derrière l'ordinateur par chaque intervenant est également énergivore.
Ensuite, séparer les langages par type de langage me semble incohérent : c'est plutôt par cas d'utilisation que cela convient. Par exemple, dans le cadre d'une application web, est-il plus énergivore de la développer en PHP ou en Java ? Dans certains cas, en PHP c'est mieux car suffisant pour les besoins de l'application, dans d'autres, Java est plus adapté car il est mieux outillé pour certaines situations. Mais les cas d'utilisations sont larges et différents et ne peuvent pas se résumer à un simple algorithme.
Mais est-ce vraiment tant cela l'important ? La quantité d'énergie consommée est un facteur important lorsqu'il y a véritablement un choix entre plusieurs options, et que l'application va être souvent sollicitée. Mais en général, les choix s'orientent autour du projet lui-même, et donc peut-être que ce qui serait plus intéressant, serait de détecter tout d'abord à quel cas d'utilisation s'applique quel langage, puis quelles sont les pratiques de programmation énergivore PAR langage/plateforme, ainsi par exemple on pourrait transformer toutes les concaténations de String en Java en appels à une classe type StringBuilder serait une recommandation "verte", mais les exemples sont innombrables, utiliser les bons types de variables quand il faut, faire des boucles que quand c'est nécessaire (parfois préférer la récursion) etc :-)
A+






Répondre avec citation













Un puriste vous dira que des librairies comme Hibernate, qui est un ORM, produit du code SQL à jeter à la poubelle vous dira le DBA (et il n'a pas tord) mais par exemple en utilisant cette librairie, on obtient d'autres avantages, on peut directement mapper la structure objet à la base sans avoir ni même à écrire la moindre ligne de SQL et puis le problème d'injection SQL est inexistant. Un exemple du "plus de fonctionnalité, plus de sécurité, mais moins de performance, plus de lourdeur". C'est sans cesse des compromis comme ceux-là qui s'offrent à nous, jusqu'au jour où peut-être les outils en question deviennent de plus en plus puissants, qu'un langage sorte du lot pour toutes les utilisations tout en étant simple (what about golang?), enfin voila j'en fini là car je doute que beaucoup aient lu ce pavé jusqu'ici

Partager