|
|
|
Обсудим Spring IoC
|
|||
|---|---|---|---|
|
#18+
Привет. Инжекцию зависимостей я себе представляю в таком виде, как на картинке. Вот хотел спросить, стоить ли доходить до такой степени фанатизма, что если в веб-приложении где-то всего в двух местах создаешь объект new HiNigga() , то сразу стоит использовать инжекцию зависимостей и создавать бин HiNigga. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2014, 16:44 |
|
||
|
Обсудим Spring IoC
|
|||
|---|---|---|---|
|
#18+
На ваше усмотрение. Универсального ответа нет. В конечном счете цель DI - снизить количество тупого кода с огронмыми констуркторами и тысячами геттеров/сеттеров, который муторно писать и тяжело сопровождать. На этом предназначение DI заканчивается. От этого и отталкивайтесь. Задайте себе вопросы: - В каком количестве мест вы ожидаете создание этого объекта? - Насколько громоздко создание этого объекта? - Согласуется ли ручное создание этого объекта с политикой вашей команды? - Укладывается ли создание этого объекта в Spring, или же нужны будут танцы с бубном? - Нужны ли будут в этом объекте какие-то замороченные фичи, вроде транзакций, который Спринг дает из коробки? - Есть ли вероятность, что этот объект будет в будущем требоваться не в 2 местах, а в 5, 10, 20? - Ести ли вероятность, что в проект со временем будут добавляться схожие по виду объекты? И т.д. и т.п.. И на основании ответов примите решение. Когда руку набьете вы будете принимать такие решения за доли секунды. Лично я являюсь противником дрочерства любого вида, включая спринго-дрочерство и паттерно-дрочерство. Так что, не зная контекста вашей задачи я изначально склоняюсь к варианту сделать без Спринга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2014, 17:17 |
|
||
|
|

start [/forum/topic.php?fid=59&tid=2127055]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
141ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 404ms |

| 0 / 0 |
