Identifiants » Historique » Révision 49
Révision 48 (Patrice Nadeau, 2025-08-09 21:18) → Révision 49/52 (Patrice Nadeau, 2025-08-09 21:43)
# Identifiants
TODO : library name + module name + action + subject
1. En **anglais américain**, maximum de **31** caractères :
* Lettres
* Macros :
* Majuscules et minuscules
> La parie principale DOIT être en majuscule
* Fonctions, variables, énumérations, structures, définition de type :
* Minuscules
* Nombre
* Commence par une lettre
* Si plusieurs mots sont utilisés, ils DOIVENT être séparées par des traits de soulignement
1. Déclaration
1. Un objet ayant une visibilité locale DOIT avoir le modificateur `static`
1. Un objet « obsolète », DOIT avoir :
1. Un des attributs :
> Génération de message lors de la compilation (`-Wall`)
* `deprecated`
* `unavailable`
1. Les commentaires Doxygen :
* `@deprecated` : Indications sur le remplacement à utiliser
* `@since` : Depuis quel version le changement est apparue
1. Commentaires Doxygen :
1. `@brief` : Description obligatoire
1. `@sa` : Lien vers une autre item (see also), facultatif
1. `@todo` : Notes sur les tachés à faire, facultatif
1. `@bug` : Notes sur les bogues présents, facultatif
1. La gradations des notes et remarques se fait selon :
* `@remark` : Non importante
* `@note` : Général
* `@attention` : Important
* `@warning` : Conséquence négative
## Exemple
``` c
/**
* @brief old_function
* @deprecated Cette fonction seras retirée, utiliser new_function à la place
* @since Version x.x.xx
*/
int old_function(void) __attribute__((deprecated));
/**
* @brief older_function old_function
* @deprecated Cette fonction est retirée, utiliser new_function à la place
* @since Version x.x.xx
*/
int older_function(void) old_function(void) __attribute__((unavailable));
```
## Justification
* Linux kernel coding style : <https://www.kernel.org/doc/html/v4.10/process/coding-style.html#naming>
* GNU Coding Standards <https://www.gnu.org/prep/standards/html_node/Writing-C.html#Writing-C>
* Embedded C Coding Standard : <https://barrgroup.com/embedded-c-coding-standard>