|
|
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
Объясните пожалуйста в каких случаях следует использовать внедрение зависимостей. Пишу приложение под Android. В задании сказано использовать Dagger 2. Только я никак не пойму где нужно и для чего DI. Объясните пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 14:32 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
Andrey3k, А что поиск на сайте сломался? Уже сколько раз обсуждали. Есть такая область подзадач на проекте - управлять зависимостями. Если её, нет, то у вас управление зависимостями размазано по всем классам. Если вы управление зависимостями уберете из всех классов, то их код станет чище и будет сконцентрирован на конкретной роли этих классов. DI это ещё и удобный способ изолировать управление жизненным циклом объектов от самих объектов. http://rsdn.ru/forum/design/3243723.1 http://rsdn.ru/forum/design/3243732.1 http://rsdn.ru/article/ioc/Inversion of Control2.xml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 14:46 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 14:47 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
di рулит. я жизни без него не представляю. спринг тоже рулит. это надо просто попробовать, чтоб понять как это удобно. а когда поймешь - будет поздно и назад уже не вернешься. эх. мне бы еще аоп постигнуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 15:35 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
У меня в проекте менеджер базы данных используется во всех Activities приложения. Единственное что я придумал инжектить его. Можете описать пример на базе Dagger 2 как это сделать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 15:46 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
andreykaTdi рулит. я жизни без него не представляю. спринг тоже рулит. это надо просто попробовать, чтоб понять как это удобно. а когда поймешь - будет поздно и назад уже не вернешься. эх. мне бы еще аоп постигнуть. AOP - это тоже плюшка сомнительно полезная. Тоесть если ты можешь просто написать код без AOP- пиши без него. И вообще... необходимость введения AOP нужно обосновывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 15:51 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
Andrey3kУ меня в проекте менеджер базы данных используется во всех Activities приложения. Единственное что я придумал инжектить его. Можете описать пример на базе Dagger 2 как это сделать ? стандартная многослойка: бин сессий (внутри которого транзакшнл манагер) инжектится в бинЫ дао, бинЫ дао инжектится в бинЫ сервиса, бинЫ сервиса инжектится в бинЫ представления (ну или как там у тебя реализовано) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 15:56 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
maytonandreykaTdi рулит. я жизни без него не представляю. спринг тоже рулит. это надо просто попробовать, чтоб понять как это удобно. а когда поймешь - будет поздно и назад уже не вернешься. эх. мне бы еще аоп постигнуть. AOP - это тоже плюшка сомнительно полезная. Тоесть если ты можешь просто написать код без AOP- пиши без него. И вообще... необходимость введения AOP нужно обосновывать. Честно говоря, что я знаю, что аннотации транзакшинал в спринге это типа реализация АОП. что это означает в сакральном смысле - понятия не имею )) Просто знаю куда ставить и в чем ее смысл и собссно всё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 15:57 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
andreykaTЧестно говоря, что я знаю, что аннотации транзакшинал в спринге это типа реализация АОП. что это означает в сакральном смысле - понятия не имею )) Просто знаю куда ставить и в чем ее смысл и собссно всё. +1 Всё верно. Аннотация имеет смысл только в контексте конейнера в котором она работает. Без нее - это просто тег в исходнике. Некоторые базовые аннотации языка такие как @Override несут смысл в фазе компилляции. Как хинт или подсказка. Я еще использую @NotNull,@Nullable для усиления контрактов везде где могу только обосновать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 16:00 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
Andrey3kУ меня в проекте менеджер базы данных используется во всех Activities приложения. Единственное что я придумал инжектить его. Можете описать пример на базе Dagger 2 как это сделать ? Ну, то есть архитектура приложения сводится к двум элементам Data Access Layer и "всё остальное". Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 16:53 |
|
||
|
Dependency Injection. Целесообразность
|
|||
|---|---|---|---|
|
#18+
Andrey3kУ меня в проекте менеджер базы данных используется во всех Activities приложения. Единственное что я придумал инжектить его. когда твое приложение вырастет и тебе понадобится связать два куска программы, которые ничего друг о друге не знают - ты вспомнишь про di ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2016, 19:00 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39251326&tid=2123997]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 360ms |

| 0 / 0 |
