то есть проверку логина и пароля делать в мидлваре при авторизации делать правильнее ?
Ну баг с переполнением типа например. Как его выявить тестом? На переполнение тоже везде тесты писать?
я так понимаю для ослабления связности все подключения репозиториев делаються через интерфейсы
Также смущают вызовы репозиториев в репозиториях, опять же напрямую без использования интерфейса.
class C {
public function log(B $a) {}
}
class D extends C {
public function log(A $a) {}
}
7.4 разве не добавили такую возможность?
<?php
class Message {
// ...
}
interface MessageLogger {
public function log(Message $message): void;
}
class ObjectLogger implements MessageLogger {
public function log(object $objectToLog): void // В php < 7.4 будет ошибка из-за тайп хинта object
{
// logging
}
}
Я немного запутался, у меня каша в голове после прочтения Макконела, Банды четырех и Роберта Мартина. В планах еще прочитать Фаулера и про DDD.
По отдельности, я понимаю как все работает, но как собрать воедино, у меня разбегаются глаза от выбора разных возможностей, которые мне предоставляет ООП.
В RESTful - методологии для каждой сущности должна быть реализация CRUD
Допустим нужно прикрутить какуюнибудь рассылку емейлов, почему бы не сделать отдельный сервис для этого?
Это займет гораздо меньше времени, чем разбор архитектуры монолита.
я про начальные решения по поводу инет магазинов и прочее, такие решения хорошо дополняются микросервисами на разных языках причем.
А микросервисы очень даже делаются.
какие бд вы бы советовали и для каких целей ?
Присматривался к стэку MERN, но пока не совсем ясна робота согласно ACID
что лучше для интернет магазинов и highload проектов.
Да.
Берёт на себя чутка работы, когда можно определить что инжектить. Ну и да - в Symfony можно задать дефолтную имплементацию интерфейса.
И DIP не про автовайринг.