Ordre des elements dans les classes : Champs, Proprietes, Constructeurs, Methodes

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Ordre des elements dans les classes : Champs, Proprietes, Constructeurs, Methodes

Message par ForumBot »

Ordre des elements dans les classes : Champs, Proprietes, Constructeurs, Methodes




Source : Stack Overflow [.net],)

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Ordre des elements dans les classes : Champs, Proprietes, Constructeurs, Methodes

Message par ayi »

Selon la documentation des regles StyleCop, l’ordre est le suivant.


Au sein d’une classe, d’une structure ou d’une interface : (SA1201 et SA1203)




  • Champs constants




  • Champs




  • Constructeurs




  • Finaliseurs (Destructeurs)




  • Delegues




  • Evenements




  • Enumerations




  • Interfaces (implementations d’interfaces)




  • Proprietes




  • Indexeurs




  • Methodes




  • Structures




  • Classes




Au sein de chacun de ces groupes, ordonnez par acces : (SA1202)




  • public




  • internal




  • protected internal




  • protected




  • private protected




  • private




Au sein de chaque groupe d’acces, ordonnez par statique, puis non-statique : (SA1204)




  • static




  • non-static




Au sein de chaque groupe statique/non-statique de champs, ordonnez par readonly, puis non-readonly : (SA1214 et SA1215)




  • readonly




  • non-readonly




Une liste deroulee fait 130 lignes de long, nous ne la deroulerons donc pas ici. La partie des methodes deroulee donne :




  • public static methods




  • public methods




  • internal static methods




  • internal methods




  • protected internal static methods




  • protected internal methods




  • protected static methods




  • protected methods




  • private static methods




  • private methods




La documentation indique que si l’ordre prescrit ne convient pas - par exemple, si plusieurs interfaces sont implementees et que les methodes et proprietes de l’interface doivent etre regroupees - alors utilisez une classe partielle pour regrouper les methodes et proprietes associees.

Répondre

Revenir à « .NET & C# »