
Sergey
27.12.2016
09:37:51
а цикломатичность?

Митко Соловец?
27.12.2016
09:37:53
то что говнище написано это одно

Sergey
27.12.2016
09:37:58
это 200 тест кейсов делать?

Ivan
27.12.2016
09:37:59

Google

Anton
27.12.2016
09:38:26

Митко Соловец?
27.12.2016
09:38:28
>т.е. много зависимостей = проблемы с архитектурой
или проект сложный

Sergey
27.12.2016
09:38:51

Митко Соловец?
27.12.2016
09:39:01
и уже потом их отдельно инжектить в 3 сервис

Anton
27.12.2016
09:39:14

Руслан
27.12.2016
09:39:18
эт как?
https://twitter.com/DailyKotlin/status/730108468368179201
Вот так + вместо @Service делаешь @Bean в конфигурации

James Tiberius Kirk ?
27.12.2016
09:39:30
тред не читал, но имхо циклические зависимости это звоночек, что с кодом что-то не так

Митко Соловец?
27.12.2016
09:39:33
и вот тут возникает вопрос, будет много зависимостей, как в конструкторе, так и через поля
так в чем прикол?

Sergey
27.12.2016
09:39:45

Руслан
27.12.2016
09:39:53

Митко Соловец?
27.12.2016
09:40:14
дженерик стереотип

Google

Руслан
27.12.2016
09:40:44
дженерик стереотип
Ответ простой: в моем проекте за филд инжекшен сразу по шам полетит подача, поэтому нехер тут спорить

Митко Соловец?
27.12.2016
09:41:05

Ivan
27.12.2016
09:41:23

Руслан
27.12.2016
09:41:30
это к чему?
Это к тому что плюсов у филд инжекшен нету, обычно все скатывается в вонючий код
Если организационно не следить

Митко Соловец?
27.12.2016
09:41:45
я вообще то про то, что @Component - абстрактный стереотип
к ответу выше

Sergey
27.12.2016
09:41:58

Руслан
27.12.2016
09:42:17

Митко Соловец?
27.12.2016
09:42:38
есть ли статьи на эту тему?

Руслан
27.12.2016
09:42:42
если у тебя два сервиса зависят друг от друга - нужно делать третий сервис
и это правильно

Митко Соловец?
27.12.2016
09:43:36
т.к. плодятся классы обертки

Руслан
27.12.2016
09:43:50
Причем тут обертки

Sergey
27.12.2016
09:43:54

Митко Соловец?
27.12.2016
09:43:56
я прислушался к вам, но хотелось бы конкретный разбор в какой-нибудь статье

Руслан
27.12.2016
09:44:15

guga
27.12.2016
09:44:16
И его проще тестировать

Google

Руслан
27.12.2016
09:44:35

Sergey
27.12.2016
09:44:56
http://vojtechruzicka.com/field-dependency-injection-considered-harmful/

Митко Соловец?
27.12.2016
09:45:00
я прислушался к вам, но хотелось бы конкретный разбор в какой-нибудь статье
окей
а еще есть?

Sergey
27.12.2016
09:45:39
это первое что нагуглил

Руслан
27.12.2016
09:45:48
Если тебе не очевидно что нельзя делать филд инжекшен

guga
27.12.2016
09:46:36
Тебе переубедить с филд инжекшином, задача такой же сложности, что и Раслана перевести на скалу.

Митко Соловец?
27.12.2016
09:46:53
мне не нравится твоя позиция радикальная Руслан
очевидно

guga
27.12.2016
09:47:04
Если ты не видешь проблем, пиши как удобно

Митко Соловец?
27.12.2016
09:47:17
это вообще профессионал в споре слово использовать не должен

guga
27.12.2016
09:47:27
главное согласуй свои решения с командой

Sergey
27.12.2016
09:47:50
а вообще говорю из опыта(не джавы), если инжектить через сеттеры/филды - тогда нет контроля над тем сколько ты инжектишь и оно не так очевидно
если у тебя 10 зависимостей, тебе ничто не мешает добавить еще один сеттер/филд. а если у тебя через конструктор идет, то оно у тебя перед глазами и ты задымываешься перед тем как добавить лишнюю
сеттеры/филды можно ж и не вызвать, они необязательные. а конструктор добавляет лишней проверки
и не нужно писать в одном классе 10 раз autowired ?

Митко Соловец?
27.12.2016
09:47:54
и самое главное
а не ААА ОЧЕВИДНО ЮЗАТЬ ДОЛЖЕН МНЕ ТАК СКАЗАЛИ

Ivan
27.12.2016
09:48:27
плюс код должен бабки зарабатывать
по хорошему

Google

Митко Соловец?
27.12.2016
09:48:35
но я ведь выше писал, что обязательно будут случаи, когда и куча сеттеров и куча филдов в конструкторе

guga
27.12.2016
09:49:16

Sergey
27.12.2016
09:49:53

Митко Соловец?
27.12.2016
09:50:19

guga
27.12.2016
09:50:24

Sergey
27.12.2016
09:50:43

Митко Соловец?
27.12.2016
09:51:34
и это тоже надо держать в голове, если у вас монолит

Admin
ERROR: S client not available

Ivan
27.12.2016
09:52:18

Митко Соловец?
27.12.2016
09:52:26
именно это я и хотел сказать
так что думаю тема теперь закрыта
баланс и работа с командой - всему голова

Sergey
27.12.2016
09:54:06
я просто пишу много юнит тестов, и большие классы сложно тестировать
так что это скорее всего основная причина

Митко Соловец?
27.12.2016
09:54:36
кстати, а как зависимости в контроллер внедряешь?
тоже через конструктор?

guga
27.12.2016
09:55:08

Google

Sergey
27.12.2016
09:55:33
в спринге да, на симфони через контейнер достаем ?

guga
27.12.2016
09:56:09
На самом деле, там всего должен быть один бин, на сервис, в идеале

Sergey
27.12.2016
09:56:47
ну это если не держать логику работы с сессиями или еще бог знает с чем

guga
27.12.2016
09:57:08

Митко Соловец?
27.12.2016
09:57:22
если только отдельно рест контроллы тестить

Sergey
27.12.2016
09:59:58
тестирование контроллеров то еще веселье

Митко Соловец?
27.12.2016
10:00:20
а я приноровился

guga
27.12.2016
10:00:28

Митко Соловец?
27.12.2016
10:01:06
правда там весело бывает, когда у тебя тесты написаны на сервисы, тоже мало смысла выходит или контроллер кучу зависимостей за собой тянет

Sergey
27.12.2016
10:01:19
если серверный рендеринг, где обильно юзаются сессии, мультистеп формы и пропихивание данных в js - тот еще адок

Митко Соловец?
27.12.2016
10:01:54
ну если серверная шаблонизация
можно и не тестить тогда на сервере
есть автотесты наконец
а вот если есть какое-нибудь API, то было бы полезно

Ivan
27.12.2016
10:02:30
контроллеры же через mockMvc тестируют

Митко Соловец?
27.12.2016
10:04:40
кстати, а если вам в тестах нужно заинжектить что-то, вы это тоже через конструктор делаете?
?????

Sergey
27.12.2016
10:05:19

Митко Соловец?
27.12.2016
10:05:35
ну а тут то какой профит?

Sergey
27.12.2016
10:07:06
а как еще?

Митко Соловец?
27.12.2016
10:07:21
ну в тоже поле
ты же не будешь этот тест юзать в другом тесте, число зависимостей у тебя 1-2