2011-07-14 1 views
5

Je sais que cela semble stupide, mais en ce qui concerne CA1709, devrions-nous ignorer cette erreur et juste faire ce que Microsoft a fait (qui est l'utilisation de Db comme l'acronyme de base de données)?CA1709 - Faut-il l'ignorer et utiliser Db ou DB?

Je me demande simplement ce que les gens font là-bas. Pour moi, il semble stupide d'utiliser DB lorsque Microsoft utilise Db partout.

+2

Personnellement, je pense que la règle des "majuscules et des minuscules acronymes" est stupide, car elle perd des informations sur le début des différentes parties d'un identificateur – CodesInChaos

+1

@CodeInChaos - comme le souligne @ChrisWue, c'est une question de cohérence. est stupide, arbitraire, ou les deux dans certains cas.Micros met beaucoup de temps et de recherche dans le leur, et en restant raisonnablement proche de cela entraîne une base de code familier à un grand nombre de développeurs. (Mes deux cents.) – TrueWill

+1

Ensuite, vous perdez la possibilité de se transformer automatiquement en une convention différente.Une application de ceci est la sérialisation JSON où la convention est généralement de séparer les mots différents avec un '_'. – CodesInChaos

Répondre

5

Cela n'a pas vraiment d'importance, n'est-ce pas? Choisissez ce que vous préférez, mais assurez-vous de l'utiliser régulièrement. Avec les conventions de codage et de nommer c'est surtout sur le choix que vous aimez et être cohérent

8

Citant Brad Abrams dans l'excellent Framework Design Guidelines:

... J'ai entendu toutes les excuses possibles pour avoir violé ces appellations directives . [...] Pour la plupart, nos clients ont vu les endroits dans lesquels nous avons divergé de ces lignes directrices (même pour la meilleure excuse ) comme des verrues dans le cadre.

En d'autres termes, faites comme ils disent, pas comme ils le font. :)

De plus, 'Db' est une abréviation, pas un acronyme. La base de données est un mot. Les abréviations ne devraient jamais être utilisées dans les identifiants selon les lignes directrices. ('Id' est un cas particulier.)

Malheureusement, le CA1709 link liste 'DB' comme exemple. :(

+0

Donc, est votre réponse indiquant que ce devrait être 'DB' ou 'Db' ? –

+0

@my Il devrait effectivement être "base de données" selon les directives de Microsoft (qui M icrosoft ne suit pas toujours). J'utiliserais probablement "Db" comme dans System.Data.Entity.DbContext - mais comme ChrisWue l'indique, choisissez un standard pour votre équipe et soyez cohérent. – TrueWill

+0

Pouvez-vous lier à ces lignes directrices, je ne pouvais pas trouver le lien réel qui stipule d'utiliser le nom complet «Base de données» n'importe où. –