169 похожих чатов

Господа а напомните мне плиз не раз тема поднималась почему

же плохо service в service иметь?

9 ответов

23 просмотра

Это вообще как ?

Dmitry-Zakharov Автор вопроса
Andrey Sergeevich 🌱
Это вообще как ?

Кароче не помню кто то не раз говорил что фиговая тема инжектить в сервис ещё один сервис

Это не плохо пока нет https://refactoring.guru/ru/smells/feature-envy Вот пример https://elearning.industriallogic.com/gh/submit?Action=PageAction&album=recognizingSmells&path=recognizingSmells/featureEnvy/featureEnvyExample&devLanguage=Java

👍

Dmitry Zakharov
Кароче не помню кто то не раз говорил что фиговая ...

Все равно сложный сервис должен какую то часть работы делегировать другому сервису, а не отвечать за все и иметь слабо связанный функционал

Привет. Речь шла о том, что фигово инжектить сервисы друг в друга, если они работают на одном и том же архитектурном слое (по дядебобской классификации). Если ты инжектишь хттпклиент в свой сервис-фасад, то в этом нет ничего опасного, потому что в хттпклиент ты свой сервис инжектить не станешь. Но если у тебя 2 или более сервиса-фасада и они, внезапно, зачем-то провайдят один другого, то очень высокий риск создать циклическую зависимость. Они могут перекрестно инжектить друг друга, их обоих может вызывать один компонент одновременно, они могут вызываться в компонентах с вложенностью, где один сервис вызывает верхний компонент, а второй - нижний... Короче вариантов выстрела в ногу масса и контролировать это очень сложно. Это основной момент. Менее явный, но по моему мнению более важный момент заключается в том, что необходимость инжектить один сервис в другой - это свидетельство плохой архитектуры, в нормальной ничего подобного делать не требуется. На вопрос о том, "как что-то там сделать если не", обычно отвечаю что-нибудь типа "тыж программист, так придумай способ", наша работа заключается в выборе наиболее подходящего решения из множества возможных, как говорил кто-то из "отцов")

Алекс Духновский Duchnowski
Привет. Речь шла о том, что фигово инжектить серви...

Как быть если надо в сервис с апи методами заинжектить сервис авторизации чтобы понять например логин ис тру или нет. Такая практика много где используется и чем это плохо в качестве архитектуры ?

Andrey Sergeevich 🌱
Как быть если надо в сервис с апи методами заинжек...

Это зависит от архитектуры вашего проекта, но, скорее всего, у вас транспортные сервисы перемешаны с бизнес-логикой, отсюда и ваша проблема. Ответственность API-сервиса - взаимодействие с сервером, там не должно быть бизнес-логики и поэтому ему нет необходимости инжектить сервис авторизации.

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта