Оптимальное расширенное соглашение о присвоении имен класса?

Какое из следующих соглашений о присвоении имен больше всего используется/принимается, или который является самым оптимальным для большинства проектов? Мне нелегко решать.

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

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

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

Так, другими словами, я должен поместить базовый класс в то же пространство имен как подклассы, и я должен назвать это чем-то постоянным как "основа", или это должно просто иметь то же имя как пространство имен?

8
задан Daniel 21 June 2010 в 07:18
поделиться

3 ответа

Не уверен, как PHP работает с пространствами имен/пакетами, но в других языках есть преимущества хранения вещей в одних и тех же пакетах. Я имею в виду возможность использовать модификаторы доступа Java default и protected, или ключевое слово C++ friend. Это может быть невозможно/не так просто, когда вы начнете отделять абстракции в отдельный пакет от конкретики.

1
ответ дан 6 December 2019 в 00:05
поделиться

Мне нравится соглашение об именовании Zend Framework. Если поначалу это кажется не очень простым, то потом это очень легко поддерживать.

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

0
ответ дан 6 December 2019 в 00:05
поделиться

Честно говоря, я всегда помещаю базовый класс в тот же каталог, что и подклассы, за исключением случаев, когда базовый класс предназначен как часть многоприкладной структуры, и в этом случае он помещается в общую библиотеку,

.
3
ответ дан 6 December 2019 в 00:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: