Programmation/Règles de programmation
Qu'est-ce qu'une règle de programmation ?
modifierUne règle de programmation informatique est la description de contraintes à respecter quand on écrit un logiciel. Il existe plusieurs types de règles de programmation :
- les règles de nommage : elles définissent la façon de nommer les identificateurs utilisés dans une application de façon à faciliter la lecture du code et à aider à détecter des erreurs.
- Exemple : les noms des constantes doivent être en lettres capitales. Les variables, fonctions et classes en CamelCase ou snake case.
- les règles permettant de faciliter le portage informatique des applications : elles identifient des constructions du langage de programmation qui peuvent avoir un comportement différent selon le système d'exploitation ou le microprocesseur.
- Exemple : deux nombres flottants ne doivent pas être comparés pour une stricte égalité (mais arrondis).
- les règles protégeant des pièges d'un langage
- Exemple en C : utiliser la condition Yoda pour ne pas confondre le "=" d'affectation et le "==" de comparaison. Cela consiste à toujours placer l'opérande variable à droite (ex : if 1 == x).
- les règles de présentation pour faciliter la relecture du code
- Exemple : mettre une seule instruction par ligne.
- les règles facilitant la maintenance des applications
- Exemple : en C, C++ et Java, mettre les blocs if et then d'un test entre accolades.
- les règles limitant la complexité du code
- Exemple : limiter la complexité des expressions à 4 opérateurs.
- les règles permettant d'améliorer la structuration du code
- Exemple : déclarer les variables partagées dans un fichier header.
Vérification des règles de programmation
modifierLa vérification d'un ensemble de règles de programmation est généralement faite lors d'un audit de code. Elle peut être réalisée soit manuellement par lecture du code, soit automatisée par un outil qui localise les violations des règles.
Outils de vérification automatique de règles de programmation
modifier- AdaControl : cet outil permet de vérifier des règles de programmation pour Ada.
- CodeCheck : cet outil permet de vérifier des règles de programmation pour C et C++.
- Logiscope Rulechecker : cet outil permet de vérifier des règles de programmation pour les langages C, C++, Ada et Java.
- En PHP, il existe phpcs, phpmd, phpstan, et psalm.
Règles de programmation standardisées
modifier- MISRA C : ensemble de règles initialement réalisées pour l'automobile et maintenant largement utilisées.
- MISRA C++ : version de MISRA C adaptée au langage C++.
- JSR pour Java.
- PSR pour PHP.