¿cómo organizas tus espacios de nombres?


5

Así que tengo entidades lógicas (persona, país, etc.), elementos/controles de GUI, controladores/controladores de navegación y datos, luego cosas como cuadrúpedos y temporizadores, y siempre lucho con la separación limpia de estas cosas en espacios de nombres lógicos.

por lo general tienen algo como esto:

  • Leviathan.GUI.Controls
  • Leviathan.GUI.Views
  • Leviathan.Entities
  • Leviathan.Controllers (datos y otras cosas)
  • Leviathan.Helpers (árboles y otras cosas)

¿Hay alguna buena guía sobre esto? Necesito detener este lío.

2

Trate de evitar el "y otras cosas" o "misc". categorías, si está poniendo las cosas en estas categorías, está fallando en organizarlas de verdad.

  0

mis pensamientos, solo me cuesta encontrar un lugar para las estructuras de datos que utilizo en raras ocasiones, pero que aún son necesarias, como un ÁrbolTable o Binario ... 23 sep. 082008-09-23 19:18:27

  0

¡¡¡Oye, lo siento, acabo de ver el cuadro de comentarios !! Acabo de encontrar esta característica. Me esforzaría por encontrar algo que sea un hilo común entre al menos 2 de ellos. A menos que no tenga nada en común con ningún otro espacio de nombres, puede categorizarse. Pero oultine rule # 1 no A sin B. Espero que esto ayude a 26 sep. 082008-09-26 13:00:31


3

Para aplicaciones

Company.Product.Tier.Sub.Sub 

donde me gusta para obtener el Nivel de Modelo, Vista, Controlador u otros nombres establecidos (datos)

Pero para nuestros controles, nos encontramos con

Company.Product.LogicalFeatureGrouping 

o

Company.Product.Addon 

veces es

Company.Product.LogicalFeatureGrouping.Addon 

0

sigo el Java/Python ideal que los espacios de nombres deben seguir la estructura de directorios.

+1

lo que nos llevaría a la siguiente pregunta: cómo organizas tu estructura de directorios :) Hago lo mismo, mis espacios de nombres están vinculados a la estructura de carpetas 23 sep. 082008-09-23 19:21:47

  0

Creo que leo un estándar en algún lugar sobre dominios ... como comenzar con un dominio de nivel superior (org, com. gov, mil) y bajar al nombre del proyecto y sus subcomponentes. 23 sep. 082008-09-23 19:25:14


1

Normalmente creo un espacio de nombres para cada nivel, como la interfaz de usuario, la lógica de negocio y la base de datos. Me obliga a separar los niveles. Creo otros espacios de nombres dentro de ellos según los componentes del sistema.