<!-- Demander si je peux rôder mon cours sur l'écoconception Java
https://hal.science/hal-03009741/document
> Un service numérique, c’est :
> • de l’information : les données
> • des traitements : algorithme, filtrage, simulation
> • des échanges d'informations
> • des interfaces utilisateurs
> Un service numérique repose sur :
> • des infrastructures logicielles : applications, outils, bibliothèques, protocoles
> • des infrastructures matérielles : serveurs, équipements réseau, terminaux, capteurs
> • des données : la matière qui sera traitée par le matériel et le logiciel
> • des personnes : développeurs, administrateurssystèmes et réseaux, chefs de projet, chercheurs
-->
## Questionner le besoin
- A-t-on vraiment besoin de le faire ?
- A-t-on vraiment besoin de le faire en code ?
- A-t-on vraiment besoin de le faire en code standardisé (non-jetable) ?
- Parfois une intervention sur la base de données est suffisante
> [!danger] Antipattern : Bloatware
> https://permacomputing.net/bloat/
> [!info] Jevons's paradox
> “the phenomenon where the increase of efficiency in the use of a resource leads to more use of the resource”
>
>https://permacomputing.net/Jevons_paradox/
>
>Voir aussi : effet rebond
> [!info] Wirth's law
> “Software is getting slower more rapidly than hardware is getting faster.”
> Niklaus Wirth —
> https://permacomputing.net/Wirth__39__s_law/
> [!info] Anecdote
> Lors d'une précédente mission, 8 personnes en réunion.
> - Nous devons prendre en compte le cas X
> - Est-ce que c'est important ?
> - Oui
> - Ca devrait prendre 2 semaines à développer, et ça complexifie considérablement le produit
> - A bon ?
> - Aujourd'hui, combien est-ce que ça occupe de personnes à le traiter et combien de temps ça leur prend ?
> - 1 personne, 2 journées par an
> - Est-ce que vous vous rendez compte que en 1h de discussions, avec nos rémunérations, nous avons déjà coûté plus de la moitié de ce que ça coûte annuellement ? Sans compter le coût de maintenance et les bugs potentiels liés à l'ajout de complexité.
> - Ah, oui
> - Pourrait-on imaginer, une solution moins technologique. Quand cette personne fera le traitement cette année. Assurons-nous qu'elle est accompagnée de 2 autres personnes qui apprendront en même temps. Et consignons le dans une prodécure écrite.
https://www.novethic.fr/lexique/detail/economie-de-fonctionnalite.html
## Écoconception et performance
Attention à l'[[Premature Optimization|optimisation prématurée]].
- Mesurer
- Trouver un hotspot
- Améliorer
- Mesurer
## À suivre
TP : https://github.com/coda-school/java_ecoconception
[[Amélioration de la performance en Java]]