0

Предположим, вам нужно создать собственный класс, который будет использоваться вашим контроллером.В MVC, где вы помещаете пользовательский класс?

class mycontroller extends main_controller 
{ 
    public function __construct() 
    { 
     $c = new my_custom_class(); 
    } 
} 

my_custom_class не модель/вид/контроллер, это автономный класс. Какова наилучшая практика для того, где (в какой папке) поставить файл my_custom_class.php? Должно ли оно просто быть помещено в произвольную папку (то есть, /custom_classes/) или существует ли наилучшая практика при использовании MVC?

+0

в части модели – Unex

+1

Imo, это зависит от того, что этот пользовательский класс на самом деле делает. –

+0

Модель лучше всего подходит, но вы можете дополнительно ее разделить, то есть /classes/helpers/MyHelper.php – LMS94

ответ

0

Это зависит от того, для чего предназначены эти «пользовательские классы». В одном из последних проектов моя структура каталогов выглядела так: http://i.stack.imgur.com/YGVI9.png

Пользовательские классы, которые взаимодействовали с контроллерами, обычно были различными службами и перешли в каталог /src/model/services.

У меня также было два места для классов уровня инфраструктуры (например, различные фабрики/строители и некоторые абстрактные классы для структур данных). Они попали либо в /src/components
, либо /src/applications/<app>/components каталогов.

То, что вы видите в своем собственном проекте, может быть «код запаха» аналоговый, но для архитектуры приложения. Это может свидетельствовать о том, что вы нажимаете логику приложения в контроллерах, где этого не должно быть.

 Смежные вопросы

  • Нет связанных вопросов^_^