【问题标题】:Optimal extended class naming convention?最佳扩展类命名约定?
【发布时间】:2011-03-06 04:39:01
【问题描述】:

以下哪些命名约定是最常用/接受的,或者最适合大多数项目的命名约定?我很难做出决定。

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

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

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

也就是说,我应该将基类与子类放在同一个命名空间中,我应该将其称为“base”之类的常量,还是应该与命名空间同名?

【问题讨论】:

标签: php oop namespaces packages


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    不确定 PHP 如何处理命名空间/包,但在其他语言中,将内容保存在同一个包中是有好处的。我正在特别考虑使用 Java 的 defaultprotected 访问修饰符或 C++ 的 friend 关键字的能力。一旦您开始将摘要与具体内容分离到不同的包中,这些可能就不可能/那么简单。

    【讨论】:

      【解决方案3】:

      我喜欢 Zend Framework 的命名约定。如果一开始看起来不太容易,那么它是非常易于维护的。

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-06
        • 2012-09-09
        • 1970-01-01
        • 2010-11-16
        相关资源
        最近更新 更多