наличие ошибок?
Даже не знаю с чего начать? С принципа единственной ответственности?
ну т.е. логирования вообще не должно быть, т.к. оно нарушает принцип единственной ответственности любого объекта где оно существует)
Ой, всё. Ты ж понимаешь, что дальше будет вопрос : а чо там у вас со слоями в архитектуре?
Лог не противоречит принципу единственной ответственности. Мы не сообщаем логу кто может добавлять в него сообщения
ну как? и бизнес логику проверяем (выполняем проверку) и лог пишем - не?
Да, но лог-то не знает какая бизнес логика проверяется. На входе просто сообщение. Опционально - с техническим контекстом, который он хранит, выдает по запросу, но не обрабатывает никак
так я и не говорю, что ответственности дофига на логе оказывается. он тут просто контейнер. Много слишком на себя в этом случае класс-проверяльщик берет
Классов проверяльшиков как раз много, они и сами разбиты по принципу SRP, так что ни один класс слишком много не возьмёт, каждый за свою логику, а лог - за наличие каких-то ошибок
SRP позволяет классу выполнять несколько функций. Класс должен выполнять одну функцию - такой принцип тоже есть, но это не SRP.
Обсуждают сегодня