Page History
...
Diagrammet nedenfor viser hvilke moduler der har adgang til hvilket data og sammenhængen imellem dem.
Shared modulet indeholder hjælpeklasser som kan bruges af alle moduler.
Shared, ui-compose og model har ingen interne afhængigheder.
app: Indeholder aktiviteter, fragmenter, views og screens, samt view models til håndtering af den generelle logik
api: Står for håndtering af data hentet fra CMS-apiet
database: Holder en lokal version af alle artikler, for at kunne håndtere de store mængder tekst fra CMSet
datastore: Holder på brugerens præferencer og brugerens graviditet (terminsdato, fødselsdato)
repo: Samler alt data fra database, datastore og API, således at denne logik abstraheres væk fra app-modulet.
shared: Indeholder klasser som skal bruges på tværs af flere moduler. F.eks. Result og ResultWrapper.
ui-compose: Indeholder Min Graviditets compose tema og specifikke typer af compose komponenter, som er stylet til projektet.
model: Indeholder data klasser.
Hjælper moduler:
TestAssertions: Har logik til at hjælpe med at teste mere effektivt - Dette modul bliver automatisk inkluderet når et modul bruger jacoco-pluginet
build-logic: Indeholder gradle plugins som hjælper med at holde koden strømlinet og ensartet. Når et modul bruger en eller flere plugins herfra vil flavors, kotlin og alt muligt andet være sat ens op.For at opdele projektet i mht seperation of concerns, så er app det eneste module som kan tilgå med repo modulet & repo modulet er den eneste som kan tilgå api modulet.