Projet

Général

Profil

Identifiants » Historique » Révision 16

Révision 15 (Patrice Nadeau, 2024-01-27 15:30) → Révision 16/38 (Patrice Nadeau, 2024-01-27 15:43)

# Objets 

 ## Règles 

 1. Comportent au maximum **31** caractères : 
     1. Lettres minuscules 
     1. Nombres 
     1. Trait de soulignement 
 1. Si plusieurs mots sont utilisés, ils sont séparées par des traits de soulignement 
 1. Le commentaire Doxygen `@brief` doit être utilisé 
 1. si la visibilité n'est que locale, le modificateur `static` doit être utilisé 
 1. Les objets ne devant plus être utilisés, DOIVENT générer un message lors de la compilation (`-Wall`) si un appel est effectué. 
     1. Les attributs`deprecated` ou `unavailable` DOIVENT être ajoutés à la déclaration. 
     1. Les commentaires Doxygen suivants doivent être ajoutés :  
         1. `@deprecated` : 
         1. `@since` : 

 ## Exemple 
 ``` c 
 /** 
  * @brief OldFunction 
  * @deprecated Utiliser NewFunction à la place 
  * @since Version x.x.xx 
  */ 
 int OldFunction(void) __attribute__((deprecated)); 

 /** 
  * @brief OldFunction 
  * @deprecated Utiliser NewFunction à la place 
  * @since Version x.x.xx 
  */ 
 int OldFunction(void) __attribute__((unavailable)); 

 /** 
 * @brief MACRO1 
 * @deprecated Utiliser NEWMACRO à la place 
 * @since Version x.x.xx 
 */ 
 #define MACRO1 43 
 #pragma GCC poison MACRO1 

 /** 
  * @brief Fonction locale 
  * @return Une valeur 
  */ 
 static int local_func(void) { 
     ... 
     return 0; 
 } 
 ``` 

 ## 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-systems/books/embedded-c-coding-standard>