@b1nary
php junior

Как сформировать правильную структуру MVC фреймворка?

Вопрос по ООП (PHP) от начинающего.
Пишу свой MVC фреймворк. Основу написал: модели контроллеры вьюхи. Есть ядро фреймворка - где лежат файлы родителей модели, контроллера и вью, в них соответственно лежат общие для потомков методы и свойства.
В проекте который будет на этом фреймворке, кроме вывода некоторой информации, нужно будет работать с физическими устройствами, отправляя им пакеты с данными и получая ответ. Т.е. зашёл на главную страницу, получил некий текст и ответ (состояние) неких устройств. По логике вещей все методы для работы с устройствами необходимо собрать в одном классе контроллере и соответственном классе модели, обеспечивая связность кода.

Не могу понять, как тут поступить:
а). то ли размазать код для работы с устройствами по контроллерам и моделям, в зависимости от того на какую страницу человек попал, то и отработало?
б). то ли создать отдельный класс и отдельную модель, что мне нравится больше, но каким образом и в какой момент подключать этот класс, то ли как-то встроить его в дерево наследования, то ли положить его вообще отдельно и в какой-то момент создать объект?

Вопрос в том, где грамотно с точки зрения MVC и ООП в целом поместить такой код для работы с устройствами?
  • Вопрос задан
  • 442 просмотра
Пригласить эксперта
Ответы на вопрос 3
donkaban
@donkaban
Умею рисовать тени
Пишу свой MVC фреймворк. (с)

Когда же вы уже накуритесь то?
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
А вот в этом то вся и "МАГИЯ" профессионализма разработчиков фреймворков!
Ответ: б
Подключение класса - при первом востребовании объекта с проверкой на существование из любого места (через глобальный "сквозной" массив-реестр запрошенных классов и не только).
Для каждого устройства - свой отдельный класс.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
11 июл. 2020, в 14:28
80000 руб./за проект
11 июл. 2020, в 14:05
5000 руб./за проект
11 июл. 2020, в 13:48
8000 руб./за проект