i_d_1
@i_d_1
Программист PHP

Как мне правильно построить архитектуру куска приложения?

В данных есть кабинеты и соотнесенные к ним запись по часам.

Cabinets:
|id|
|1|
|2|

Zapis:
| cabinet_id | date | time | value |

Хочу попробовать создать архитектуру основанную на хранении данных в репозиториях.
Есть экшен контроллера котрый рендерит запись на день.

В моем понимании есть интерфейс репозитория кабинетов, внутри имплементированного репозитория (реализации интерфейса, ссори за французский ), есть фабрика которая создает этот кабинет, есть класс кабинета, где я в конструкторе получаю записи по кабинету из бд.

Я не пойму как мне, на каком этапе связать фабрику и репозиторий. Или мне нужно внутри экшена лепить два репозитория, один SQL, второй мемори, и делать так SQLRepo-> Factory -> MemoryRepo, чтобы все соответствовало стандартам.

И в догон, правильно ли я поступаю получая запись в конструкторе кабинета?
  • Вопрос задан
  • 172 просмотра
Пригласить эксперта
Ответы на вопрос 1
dmitriylanets
@dmitriylanets
веб-разработчик
по простому:
Controller{
protected $cabinetRepo;
protected $zapisRepo;
function __constructor(CabinetRepository $cabinetRepo, ZapisRepository $zapisRepo ){
$this->zapisRepo = $zapisRepo;
$this->cabinetRepo = $cabinetRepo;
}

public function action(){

$zapisCollection = $this->zapisRepo->findOnCurrentDay();

}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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