mobility-team/mobility

[Suggestion] Utiliser PEP8 pour améliorer la lisibilité du code

Mind-the-Cap opened this issue · 4 comments

Bonjour,

Les conventions Python permettent d'avoir une meilleure lisibilité du code, ce qui est important car on lit plus souvent le code qu'on ne l'écrit (et ça me semble particulièrement vrai avec Mobility). Un code standard peut être réutilisé facilement pour des projets, est plus facile à améliorer, et évite les doublons.

Je vous propose de suivre les conventions PEP8 et PEP257 pour le projet. Vous trouverez un court descriptif de la première ici, mais voici les points essentiels :

  • des lignes courtes (pas plus de 79 caractères),
  • indentation avec 4 caractères,
  • bon positionnement des espaces,
  • commenter le code en anglais,
  • utiliser les docstrings (vu la complexité du code, je dirais plutôt la version en plusieurs lignes, en précisant bien les types des données d'entrée pour les fonctions).

La plupart des éditeurs Python proposent de tester la conformité directement en écrivant du code. Pour ce qui est de l'existant, on peut utiliser des solutions comme black qui permettent de le transformer automatiquement (je peux m'en charger si vous le voulez).

N'hésitez pas si vous avez des commentaires ou des remarques !

FlxPo commented

Je vote également pour l'utilisation de black, pour être sûr que tout est OK.

FlxPo commented

Conversion du code existant dans la branche main avec black : 07786be

J'ai suivi les instructions données par black, en identifiant le commit de migration dans un fichier.

Comment est ce qu'on fait en sorte d'avoir du code bien formaté dans chaque pull request ? Une check list ? Un action Hithub automatique ?

Super !

Je dirais plutôt une action Github, j'ai configuré ça et ça a l'air de bien marcher : #25

Ajouté dans la documentation avec #65