2010-08-30 18 views
1

Dans les EDI comme QtCreator ou avec le concepteur de formulaires de Visual C#, j'aimerais savoir si les libellés "devraient" être nommés ou tout simplement laissés avec le schéma de dénomination par défaut du concepteur de formulaires. Si l'objet ne doit pas être touché dans le code et ne sert que d'information textuelle non-changeante, l'objet doit-il faire partie d'un schéma de nommage? Si j'ai une étiquette au-dessus d'un champ de texte dans lequel l'utilisateur entre son nom, dois-je nommer cette étiquette "lblNamePrompt"?Lorsque vous utilisez un concepteur de formulaires, les étiquettes doivent-elles être nommées?

Juste curieux d'obtenir des réponses.

Répondre

1

Si l'objet ne va pas être touché dans le code et ne sert que des informations textuelles qui ne changent pas, l'objet ne doivent faire partie d'un certain schéma de nommage?

Je ne donnerais pas un nom si je ne vais pas l'utiliser. Parce que je suis fainéant et parce que si quelque chose fonctionne comme il est, je ne vais pas réparer ce quelque chose.

1

Je pense que garder le code clair même si vous n'êtes pas allez toucher « jamais » (notez les guillemets) est une bonne pratique. Je vais recommander de donner un bon nom à cela.

Im pas un programmeur .NET, mais je l'ai vu dans un code est qu'ils utilisent des noms comme:

Pour:

Labels:

  • lblFirstName
  • lblLastName
  • lblAddress

Boutons:

  • btnSend
  • btnCancel

Je suis très PRO- YAGNI. Mais je pense qu'il vaut la peine de donner aux objets un nom qui fait référence au but/usage.

3

Je ne suis pas d'accord avec la réponse acceptée. Il y a certains aspects de la programmation où l'on peut prétendre que la paresse est une vertu, mais le nom n'est pas l'un d'entre eux - que ce soit des contrôles, des variables ou des membres, votre objectif devrait être , non l'efficacité. Quelqu'un va devoir comprendre et maintenir ce code par la suite, même si c'est seulement moi qui essaie de répondre à une question que vous avez posté sur Stack Overflow. Les noms les plus descriptifs que vous avez donnés à vos objets, le temps plus facile que moi ou quelqu'un d'autre va passer à travers votre code source.

En supposant que vous utilisez le concepteur de formulaires dans Visual Studio, je vous propose une règle très simple:

  • Si vous ne prévoyez pas d'utiliser le contrôle de n'importe où dans votre code, vous devriez définissez sa propriété GenerateMember sur "False". Cela empêche le concepteur d'émettre une variable membre de niveau classe pour le contrôle, mais génère uniquement une variable locale dans le InitializeComponent method, ce qui limite l'encombrement. Alors et seulement alors vous devriez vous sentir à l'aise de ne pas donner un nom au contrôle.

  • Sinon, si vous prévoyez ou peut-être jamais faire référence au contrôle de quelque part dans votre code, vous devez lui donner un nom descriptif . Période. Ce n'est pas si difficile de taper quelque chose.

Je suppose la partie controversée de cette question est de savoir si la notation quasi-hongrois est utile
(comme suggéré dans la réponse de Garis), pas si vous devez donner un nom de contrôle du tout. La façon dont "btn" fait que tous les contrôles de bouton sont triés dans Intellisense, mais je comprends que certaines personnes ont une haine pathologique du hongrois qui provient probablement d'avoir été obligé de l'utiliser à un stade plus précoce dans leur codage carrière, alors n'hésitez pas à l'utiliser ou non en fonction de votre plaisir.