Optimal extended class naming convention?
Which of the following naming conventions is most used/accepted, or which is most optimal for most projects? I'm having a hard time deciding.
Base class: \Model
Sub class: \Model\User
Base class: \Model\Model
Sub class: \Model\User
Base class: \Model\Base
sub class: \Model\User
开发者_StackOverflowSo in other words, should I put the base class in the same namespace as the subclasses, and should I call it something constant like "base" or should it just have the same name as the namespace?
Honestly, I always put the base class in the same directory as the sub classes, inless the base class is intended as part of a multi-application framework, in which case it would go in a generic library library,
Not sure how PHP handles namespaces/packages, but in other languages there are benefits to keeping things in the same packages. I'm thinking specifically, of the ability to use Java's default
and protected
access modifiers, or C++'s friend
keyword. These might not be possible/as straightforward once you start separating abstracts into a different package from concretes.
I like the Zend Framework naming convention. If it don't seems very easy at first, it's very maintainable.
http://framework.zend.com/manual/en/coding-standard.naming-conventions.html
精彩评论