Standard pour le code - RoboCupULaval/Admin GitHub Wiki
La team-ia a établi des normes concernant la qualité du code. Celles-ci concernent des aspects comme le style du code, la documentation et les outils devant supporter tout ajout de code.
Style du code
L'équipe utilise une variante de la PEP-8.
Les différences:
- La longueur d'une ligne est fixée à 120 caractères
- La documentation et les commentaires sont en français (le code en lui-même est en anglais)
Il existe un linter pep8 qui permet de valider automatiquement du code source. Cet outil est utilisé sur le serveur d'intégration continu et est employé lors de l'acceptation d'un pull request.
Documentation et docstrings
Le code doit être obligatoirement documenté. Ceci inclut au minimum la présence des docstrings selon la norme PEP-257. Idéalement, les lignes de codes tordues, mais nécessaires, devraient être brièvement commentées. Un individu qui procède à une lecture de code doit être capable de comprendre le code sans devoir questionner l'auteur directement. À terme, une documentation HTML sera générée à partir des docstrings et mise en ligne.
Tests unitaires
L'ensemble du code doit être couvert par des tests unitaires. L'objectif est une couverture de 90 %. Les tests unitaires doivent au minimum stresser les entrées et sorties courantes d'une fonction.