parent
9879c44440
commit
a23f785795
@ -1 +1,38 @@
|
|||||||
Bienvenue sur le Wiki.
|
# Présentation de l'API
|
||||||
|
## Diagramme de paquetage
|
||||||
|
```plantuml
|
||||||
|
@startuml
|
||||||
|
package Entities{}
|
||||||
|
package DbContextLib{}
|
||||||
|
package StubbedContextLib{}
|
||||||
|
package Model2Entities{
|
||||||
|
class DbService
|
||||||
|
}
|
||||||
|
package Dto{}
|
||||||
|
package Model{}
|
||||||
|
package Shared{
|
||||||
|
interface IDataService
|
||||||
|
}
|
||||||
|
package API{
|
||||||
|
class DbDataManager
|
||||||
|
}
|
||||||
|
|
||||||
|
DbContextLib ..> Entities
|
||||||
|
StubbedContextLib ..> DbContextLib
|
||||||
|
Model2Entities ..> DbContextLib
|
||||||
|
Model2Entities ..> Dto
|
||||||
|
Model2Entities ..> Model
|
||||||
|
Model2Entities ..> Shared
|
||||||
|
API ..> Shared
|
||||||
|
|
||||||
|
DbDataManager ..|> IDataService
|
||||||
|
DbService ..|> IDataService
|
||||||
|
@enduml
|
||||||
|
```
|
||||||
|
|
||||||
|
**Explications :**
|
||||||
|
Le service `IDataService` va déclarer toutes les méthodes qui seront appelées par l'API. C'est à dire que toutes les requêtes que le client pourra faire seront dans le IDataService.
|
||||||
|
`DbService` et `DbDataManager` vont implémenter le même service.
|
||||||
|
DbDataManager va appeler les méthodes de DbService car nous voulons exposer à l'utilisateur seulement les classes du Model.
|
||||||
|
DbService va s'occuper des mêmes méthodes mais en gérant le passage de Model vers Entities via des Dto.
|
||||||
|
De cette façon, l'API et les Entities sont indépendantes et nous sommes ouverts à `l'extension`.
|
Loading…
Reference in new issue