Skip to content

Commit d114f0b

Browse files
authored
Иерархия оформлена с помощью псевдографики
1 parent a3271af commit d114f0b

File tree

1 file changed

+55
-53
lines changed

1 file changed

+55
-53
lines changed

theory/Theory_article.md

Lines changed: 55 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -23,60 +23,62 @@
2323
Модели данных обычно представляют собой простые POJO, то есть только данные без какой-либо логики. Для упрощения все подобные модели лучше размещать в специальном пакете под названием "models" (можно подобрать более удачное название, чтобы не так созвучно было с понятием "model").<br>
2424

2525
Структура пакетов:
26+
```
27+
project
28+
├─ di
29+
│ ├─ app
30+
│ ├─ payments
31+
│ └─ operation
32+
├─ presentation
33+
│ ├─ view
34+
│ │ ├─ payments
35+
│ │ │ ├─ PaymentsView
36+
│ │ │ └─ PaymentsFragment
37+
│ │ └─ operations
38+
│ │ ├─ OperationsView
39+
│ │ └─ OperationsFragment
40+
│ └─ presenter
41+
│ ├─ payments
42+
│ │ └─ PaymantsPresenter
43+
│ └─ operations
44+
│ └─ OperationsPresenter
45+
├─ domain (он же business)
46+
│ ├─ payments
47+
│ │ ├─ PaymentsInteractor
48+
│ │ ├─ PaymentsInteractorImpl
49+
│ │ └─ CurrencyHandler (вспомогательный класс для PaymentsInteractor)
50+
│ └─ operations
51+
│ ├─ OperationsInteractor
52+
│ ├─ rubs
53+
│ │ ├─ OperationsInteractorRubs
54+
│ │ └─ RubsManager (вспомогательный класс для OperationsInteractorRubs)
55+
│ └─ currency
56+
│ ├─ OperationsInteractorCurr
57+
│ └─ CurrencyManager (вспомогательный класс для OperationsInteractorCurr)
58+
├─ repositories
59+
│ ├─ payments
60+
│ │ ├─ PaymentsRepository
61+
│ │ └─ PaymentsRepositoryImpl
62+
│ └─ operations
63+
│ ├─ OperationsRepository
64+
│ └─ OperationsRepositoryImpl
65+
├─ data
66+
│ ├─ network
67+
│ └─ db
68+
└─ models (по сути хранилище всех dto)
69+
├─ payments
70+
│ ├─ PaymentsModel
71+
└─ operations
72+
├─ presentation
73+
│ └─ OperationUIModel
74+
├─ domain
75+
│ ├─ OperationsRubModel
76+
│ └─ OperationCurrModel
77+
└─ data
78+
├─ OperationsRubNetworkModel
79+
└─ OperationCurrNetworkModel
80+
```
2681

27-
-di<br>
28-
---app<br>
29-
---payments<br>
30-
---operation<br>
31-
-presentation<br>
32-
---view<br>
33-
-----payments<br>
34-
-------PaymentsView<br>
35-
-------PaymentsFragment<br>
36-
-----operations<br>
37-
-------OperationsView<br>
38-
-------OperationsFragment<br>
39-
---presenter<br>
40-
-----payments<br>
41-
-------PaymantsPresenter<br>
42-
-----operations<br>
43-
-------OperationsPresenter<br>
44-
-domain (он же business)<br>
45-
---payments<br>
46-
-----PaymentsInteractor<br>
47-
-----PaymentsInteractorImpl<br>
48-
-----CurrencyHandler (вспомогательный класс для PaymentsInteractor)<br>
49-
---operations<br>
50-
-----OperationsInteractor<br>
51-
-------rubs<br>
52-
---------OperationsInteractorRubs<br>
53-
---------RubsManager (вспомогательный класс для OperationsInteractorRubs)<br>
54-
-------currency<br>
55-
---------OperationsInteractorCurr<br>
56-
---------CurrencyManager (вспомогательный класс для OperationsInteractorCurr)<br>
57-
-repositories<br>
58-
---payments<br>
59-
-----PaymentsRepository<br>
60-
-----PaymentsRepositoryImpl<br>
61-
---operations<br>
62-
-----OperationsRepository<br>
63-
-----OperationsRepositoryImpl<br>
64-
-data<br>
65-
---network<br>
66-
---db<br>
67-
-models (по сути хранилище всех dto)<br>
68-
---payments<br>
69-
-----PaymentsModel<br>
70-
---operations<br>
71-
-----presentation<br>
72-
-------OperationUIModel<br>
73-
-----domain<br>
74-
-------OperationsRubModel<br>
75-
-------OperationCurrModel<br>
76-
-----data<br>
77-
-------OperationsRubNetworkModel<br>
78-
-------OperationCurrNetworkModel<br>
79-
8082
3. Есть несколько вариантов трактования понятия "Репозиторий". Подробно можно почитать, например, [здесь](http://hannesdorfmann.com/android/evolution-of-the-repository-pattern). В Андроид-мире "Репозиторий" - это абстракция для получения данных, то есть она скрывает, с какого именно источника получены те или иные данные. <br>
8183
Кроме того Репозиторий может внутри себя реализовывать логику кеширования данных и соответственно выдачи либо закешированных данных, либо данных с сети.
8284

0 commit comments

Comments
 (0)