Private Static Readonly Champ De Capitalisation
Pascal ou à dos de chameau cas?
J'ai le nom des champs privés et privés champs statiques à l'aide de chameau cas. J'ai le nom de consts (comme suggéré par MME conventions de nommage) avec pascal cas (quel que soit privé ou public)....
Alors que sur le private static readonly? La logique dit chameau cas...mais une private static readonly est fonctionnellement comme un const...à droite?
- Pourquoi vous pensez que c'est comme un const ?
- Parce que, en utilisation, private static readonly est le même que pour un cosnt: définir une fois, ne peut pas changer, statique portée. Je me rends compte const est totalement différent de la mise en œuvre (être interprété et compilé et autres joyeusetés).
- Non, il n'est pas comme un const: stackoverflow.com/a/4577372/618649
Vous devez vous connecter pour publier un commentaire.
MSDN Noms des Membres de Type
MSDN Officiel de la Convention d'affectation de noms
Règles Générales:
Liste Complète:
MSDN Officiel de la Convention d'affectation de noms
Également envisager de
Non,
private static readonly
n'est pas, en elle-même commeconst
à tous. Considérer:Vous pouvez toujours faire
foo.Add(0);
. Ces champs ne sont const-comme lorsque l'objet lui-même, ainsi que tous les objets référencés, sont immuables.J'ai reçu un avertissement en StyleCop pour:
Avertissement 364 SA1306 : CSharp.Nom : les noms de Variables et privés noms de champs doivent commencer par une lettre minuscule: LabelBackColor.
Voir cette discussion: private readonly champs doit commencer par une minuscule. Cela signifie Chameau cas.
Voici un exemple de source de référence. Il est intéressant de Microsoft ici utilisé trait de soulignement pour les champs privés et camelCase (pas d'underscore) pour private static readonly http://referencesource.microsoft.com/#mscorlib/system/collections/arraylist.cs,3e3f6715773d6643. Mais ce deuxième exemple montre aussi, Microsoft n'a pas son propre standard pour le champ de nommage : http://referencesource.microsoft.com/#mscorlib/system/collections/hashtable.cs
Je ne vous inquiétez pas sur la correspondance de quelqu'un d'autre conventions, aussi longtemps que vous êtes cohérent avec ce que la convention de nommage que vous utilisez, il n'a pas vraiment d'importance ce que vous choisissez de le faire. Il y a des choses bien plus importantes à se soucier.