Pergunta

Ok, você faz Business.Name ou Business.BusinessName SubCategory.ID ou SubCategory.SubCategoryID

E no seu banco de dados?

Por que?

Estou dividido com ambos.Adoraria que houvesse uma "resposta certa"

Foi útil?

Solução

A principal desvantagem de usar ID, Nome, etc. é que você precisa qualificá-los com o nome da tabela se estiver escrevendo uma junção SQL que se sobrepõe a duas tabelas.

Apesar disso, acho muito mais conciso e legível usar apenas ID e Nome - seu código e tabelas 'fluirão' com muito mais facilidade pelos olhos.Mais fácil de digitar e menos redundante.E digitando SELECT Business.Name FROM ...em uma consulta SQL não é mais problemático do que digitar SELECT BusinessName FROM ...

Em geral, se me pego repetindo uma informação semântica, isso me alerta para procurar maneiras de eliminá-la ou pelo menos reconhecer por que ela se repete.Isto pode ser em pequena escala (nomes de atributos) ou em grande escala (padrões de comportamento ou estruturas de classes comuns).

Outras dicas

A única resposta “certa” é ser consistente.Decida antecipadamente qual você usará em um projeto e cumpra-o.

Para propriedades muito comuns como "Nome" e "ID", a convenção que utilizei é não colocar o nome da entidade no campo.Para propriedades mais incomuns, coloco o nome da entidade.

Essa é uma decisão de convenção de nomenclatura, mas não me arrependi de projetos onde essa é a convenção, se colocar o nome da entidade para cada ID acaba parecendo muito detalhado.

identificamos qualquer coisa que seja a chave primária.Dizer SubCategory.SubCategoryID parece redundante,

Posso não estar certo, mas acho que Id é um prato mais saboroso.

coisa.id
porque se você vai escrever qualquer material reflexivo que lide com seus objetos e precise de chave primária, é muito mais fácil conhecê-lo em todos os lugares do que tentar determiná-lo com uma fórmula.

Quanto ao outro, isso é preferência total e não vejo nenhuma implicação real além do tempo perdido digitando os outros caracteres e seu .net, para que ninguém realmente digite namespaces de qualquer maneira.

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