最佳扩展类命名约定?

时间:2010-06-21 07:18:59

标签: php oop namespaces packages

以下哪种命名约定最常用/接受,哪种最适合大多数项目?我很难决定。

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

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

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

换句话说,我应该将基类放在与子类相同的命名空间中,我应该将其称为常量,如“base”,还是应该与命名空间同名?

3 个答案:

答案 0 :(得分:3)

老实说,我总是将基类放在与子类相同的目录中,无论基类是作为多应用程序框架的一部分,在这种情况下它将放在通用库库中,

答案 1 :(得分:1)

不确定PHP如何处理命名空间/包,但在其他语言中,将内容保存在相同的包中是有好处的。我特别想到了使用Java的defaultprotected访问修饰符或C ++的friend关键字的能力。一旦你开始将摘要分离到不同的包装中,这些可能是不可能的/直接的。

答案 2 :(得分:0)

我喜欢Zend Framework命名约定。如果一开始看起来并不容易,那就非常容易维护。

http://framework.zend.com/manual/en/coding-standard.naming-conventions.html