Catégorie : Bonnes PratiquesCatégorie : EcoconceptionCatégorie : Logiciels

écoconception mobile : les bonnes pratiques

En 2022, les utilisateurs ont installé 148 milliards d’applications sur leurs périphériques (Android ou iOS), faisant des apps mobiles une cible de choix de la démarche d’écoconception, en plus des sites web

Face à de tels chiffres et parce que tous les projets ne peuvent pas suivre une démarche d’écoconception dans les règles de l’art (lire à ce sujet le standard IEC 62430), un fort degré d’automatisation est indispensable côté développeurs mobile pour les aider à appliquer les bonnes pratiques clés, partout, tout le temps.

C’est en partant de ce constat qu’est née l’idée d’appliquer les techniques d’analyse et de réparation automatique de programmes au domaine de l’écoconception mobile. Mais pour relever le défi, il a d’abord fallu répertorier les bonnes pratiques à partir de différentes sources de confiance : la documentation de référence de la plateforme, les études scientifiques et les retours d’expérience des développeurs.

Green Code Checklist

Voici les 8 règles d’or pour programmer une app mobile plus eco-friendly. Cette checklist de haut niveau a été initialement pensée pour la plateforme Android, mais elle semble tout aussi indiquée pour iOS.

  1. OPTIMIZED API

Check battery-efficient APIs that have been specifically designed to substitute regular APIs

  1. LEAKAGE

Make sure that an acquired resource is always released, to avoid unnecessary battery drain

  1. BOTTLENECK

Avoid accumulation of data or operations that will require an energy peak to be processed

  1.  SOBRIETY

Make reasonable accommodations between user experience and more energy efficient variants

  1. IDLENESS

When the app enters in a idle state, reduce the workload accordingly

  1. POWER

Adapt the app’s behavior to the battery status helps prolong the battery life

  1. BATCH

Grouping individually costly operations allows to save energy globally

  1. RELEASE

Favour the compile-time tasks that decrease the energy footprint of the deployment of the app

Green Code Smells

Chaque règle d’or ci-dessus peut être déclinée en différents “code smells”, qui sont les symptômes visibles, dans le code source, des impacts environnementaux directs ou indirects à venir. Ils sont ainsi responsables d’une dette technique doublée d’une dette écologique. 

Débuté en 2019 avec 9 codes smells seulement, le catalogue pour la plateforme Android en compte aujourd’hui 42 et est en constante évolution.

Accéder au catalogue de code smells Android

Les codes smells, qui sont des bonnes pratiques de bas niveau, offrent la garantie d’être détectables par des outils d’analyse statique de programme. C’est par exemple l’objectif du plugin SonarQube™ ecoCode Mobile capable de renifler ces codes smells.

Olivier Le Goaër

Docteur en Informatique et spécialiste en Génie Logiciel. Maître de Conférences chez E2S UPPA et membre du collectif Green Code Initiative.

Site web - Linked In