Есть две основные структуры кодовой базы, которые я видел, когда дело доходит до инфраструктур MVC. Проблема в том, что у них обоих есть организационная ошибка, связанная с ними.
Стандарт MVC
/controller
/model
/view
Проблема: Нет разделения связанных компонентов (форум, блог, пользователь и т. Д.)
Модульный MVC
/blog
/controller
/model
/view
/user
/controller
/model
/view
/forum
/controller
/model
/view
Выбор системы на основе модулей оставляет вас с проблемой.
- Длинные имена (Forum_Model_Forum = forum / model / forum.php) (как Zend)
- Файловая система выполняет поиск,
is_file()
чтобы определить, какая папка имеет модель форума? (Как и Кохана)
Есть ли у них какие-либо другие структуры MVC, которые хорошо работают при попытке разделить разные модули? Есть ли преимущества от этих структур, которые я пропускаю?