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

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

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

9 ответов

6 просмотров

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

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-сервиса - взаимодействие с сервером, там не должно быть бизнес-логики и поэтому ему нет необходимости инжектить сервис авторизации.

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

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

коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
19
А что ты вообще делаешь ?
Yesgoter
13
средствами IBX как-то можно выполнить запрос insert ... returning?
Igor
31
На работе пишем распределенное приложение, у которого сотни, если не тысячи настроек. Конфиги написаны на xml, расположены на разных хостах и должны быть согласованы друг с др...
Aleksandr Druzhinin
5
Всем привет 🙂 Какая-то непонятная проблема у меня с видео, раньше такого не было. Загружаю видео с гугл диска именно в видео mp4 и меняю ссылку как положено вот она: https://d...
Ксюша|Верстка на Тильде|Дизайн 🦥
6
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
А какие у этого try практические плюсы перед eval?
Oleg Volkov
41
Карта сайта