Pregunta

Ok, ¿lo haces? Business.Name o Business.BusinessName SubCategory.ID o SubCategory.SubCategoryID

¿Qué pasa con tu base de datos?

¿Por qué?

Estoy dividido con ambos.Me encantaría que hubiera una "respuesta correcta"

¿Fue útil?

Solución

El principal inconveniente de usar ID, Nombre, etc. es que debe calificarlos con el nombre de la tabla si está escribiendo una combinación SQL que se superpone a dos tablas.

A pesar de eso, encuentro mucho más conciso y legible usar simplemente ID y Nombre: su código y tablas "fluirán" mucho más fácilmente más allá de los ojos.Más fácil de escribir y menos redundante.Y escribiendo SELECT Business.Name FROM...en una consulta SQL no es realmente más problemático que escribir SELECT BusinessName FROM...

En general, si me encuentro repitiendo información semántica me alerta para buscar formas de eliminarla o al menos reconocer por qué se repite.Esto podría ser a pequeña escala (nombres de atributos) o a gran escala (patrones de comportamiento o estructuras de clases comunes).

Otros consejos

La única respuesta "correcta" es ser coherente.Decida de antemano cuál utilizará en un proyecto y cúmplalo.

Para propiedades muy comunes como "Nombre" e "ID", la convención que he usado es no poner el nombre de la entidad en el campo.Para propiedades más inusuales, pongo el nombre de la entidad.

Esta es una decisión de convención de nomenclatura, pero no me he arrepentido de proyectos donde esta es la convención, si pones el nombre de la entidad para cada ID, termina pareciendo demasiado detallado.

Identificamos cualquier cosa que sea la clave principal.Decir SubCategory.SubCategoryID parece redundante,

Puede que no tenga razón, pero creo que el Id es un plato más sabroso.

cosa.id
porque si vas a escribir algo reflexivo que trate sobre tus objetos y necesite una clave principal, es más fácil conocerla en todas partes y luego tratar de determinarla con una fórmula.

En cuanto al otro, esa es una preferencia total y no veo ninguna implicación real aparte de la pérdida de tiempo escribiendo los otros caracteres, y es .net, por lo que nadie escribe espacios de nombres de todos modos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top