Pergunta

Eu parei de usar notação húngara em todos os lugares, exceto na interface do usuário, onde muitas vezes eu tenho um rótulo de nome de usuário, uma caixa de texto nome de usuário, uma variável local nome de usuário, um validador de campo necessária, uma propriedade de nome de usuário e parâmetro do método assim por diante , muitas vezes tudo no mesmo contexto.

atual: lblUser, txtUser, rfvUser, _USER, Usuário, o usuário

Se eu fizer o óbvio, userLabel, UserTextBox, UserRequiredFieldValidator, parece que eu estou apenas substiuting sufixos mais longos para prefixos mais curtos.

E o _ para o campo que indica, é sinalizado por FxCop, mas sem um prefixo, ele iria colidir com a convenção de usuário / utilizador aprovado.

Todas as sugestões?

Foi útil?

Solução

Eu ainda geralmente usam notação húngara para UI objetos como eu encontrá-lo faz meu código mais legível.

Gostaria de usar coisas como m_firstNameTextBox ou m_countryComboBox para os controles de interface do usuário e, em seguida m_firstName e m_country para os valores de cadeia a partir desses controles.

No final do dia, você deve usar o que você preferir. A regra cobertor para evitar notação húngara é tão mau como o que estipula o uso religioso do mesmo. É obivous que coisas como intCounter, strName são um exagero, mas em outros casos, faz bom senso para indicar o tipo de classe em nome variável e em meus controles opinião UI passa a ser um dos casos em que faz sentido.

Outras dicas

Não há nada de errado com notação húngara, desde que ele é usado para tornar o código mais legível. Se você acha que não contribui para isso, então não usá-lo.

Ah, e por favor não use tanto ' usuário ' e ' user '. É difícil de ler, usar, manter e porto. Se duas coisas diferentes têm dois significados diferentes, então notação húngara é uma opção melhor do que a codificação esse pedaço de informação por lançando caracteres entre maiúsculas / minúsculas.

Eu não sei quem inventou de maiúsculas e minúsculas em linguagens de programação, mas ele fez mais danos do que qualquer um poderia ter imaginado no momento. Eu odeio ficar erros do compilador porque eu digitei ' ID ' em vez de ' id ' ou ' usbdrive ', quando deveria ter sido ' usbdrive '.

Eu prefiro Húngaro mesmo que leva para realmente longos nomes na interface do usuário (por causa do problema que você mencionou em questão). A minha única sugestão é ser consistente ao longo de toda a equipe.

Use todas as letras minúsculas e sublinhados, ea questão caso vai embora. SomeIdiotSomewhereDecidedThisWasAGoodWayToDoThingsAndIfIFindHimIWillKillHim.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top