SimpleMVC
(smvc
) -- учебный фреймворк, созданный в IFF для того, чтобы сделать изучение бэкэнд-разработки на PHP проще и эффективнее.
Работа с фреймворком является одной из частей нашего открытого курса по бэкэнд-разработке.
SMVC является примером простой реализации паттерна проектирования MVC, это значит весь код условно разделяется модели, представления и контроллеры.
Использование SMVC подразумевает, что код вашего сайта делится на две основные части:
- Ядро (отдельный репозиторий it-for-free/SimpleMVC) -- решает универсальные задачи, позволяет писать код более структурированно.
- Приложение (также эту часть можно называть Сайтом) (репозиторий it-for-free/SimpleMVC-example), который использует ядро, передав ему необходимую конфигурацию, показывает конкретный (частный) пример использования возможностей ядра.
В репозитории Приложения находятся контроллеры, модели и представления, которые, собственно, и описывают как выглядит и работает сайт, но управления логикой их использоваения осуществляется кодом, лежащим в репозитории Ядра.
При работе с кодом контретного проекта (сайта), мы: редактируем файлы Приложения, но не редактируем код Ядра. Код Ядра загружается как пакет менеджера зависимостей Composer и не хранится в репозитории приложения.
Таким образом, в данном подходе Ядро можно рассматривать, как библиотеку, функционал которой используется в нашем Приложении.
Главная идея здесь состоит в том, чтобы отделить универсальную логику ядра приложения (в нашем случае это it-for-free/SimpleMVC), которая будет одинаковой для самых разных сайтов, от того кода, который решает задачи конткретного сайта (как-то обрабатывая данные).