2010-06-21 19 views
8

¿Cuál de las siguientes convenciones de nomenclatura es la más utilizada/aceptada, o cuál es la más óptima para la mayoría de los proyectos? Me está costando decidir.convención de nomenclatura de clase extendida óptima?

Base class: \Model 
Sub class: \Model\User 

Base class: \Model\Model 
Sub class: \Model\User 

Base class: \Model\Base 
sub class: \Model\User 

En otras palabras, debería poner la clase base en el mismo espacio de nombres que las subclases, y debo llamarla de alguna manera constante como "base" o debe simplemente tener el mismo nombre que el espacio de nombres?

+0

Reflexiones sobre los espacios de nombre: http://stackoverflow.com/questions/431911/namespace-rule-of-thumb – cbednarski

Respuesta

3

Honestamente, siempre pongo la clase base en el mismo directorio que las subclases, inless la clase base está pensado como parte de un marco de múltiples aplicaciones, en cuyo caso se iría en una biblioteca biblioteca genérica,

1

No estoy seguro de cómo PHP maneja los espacios de nombres/paquetes, pero en otros idiomas hay beneficios para mantener las cosas en los mismos paquetes. Estoy pensando específicamente en la posibilidad de utilizar los modificadores de acceso default y protected de Java, o la palabra clave friend de C++. Es posible que esto no sea posible/tan simple una vez que comience a separar los resúmenes en un paquete diferente de los concretos.

Cuestiones relacionadas