# Archtitektur ## Layers | Id | Name | |----|----------------| | 1 | Presentation | | 2 | Application | | 3 | Domain | | 4 | Infrastructure | ### 0. Core - Logger - DI-Setup - Assets ### 1. Presentation #### <PLATFORM> - 0+ Pages - 0+ Flows ### 2. Application - 0+ Cubits - 0+ Blocs ### 3. Domain - 0+ Entities - 0+ ValueObjects - 0+ ServiceInterfaces ### 4. Infrastructure - 0+ Dtos - 0+ ServiceImplementations ## Components | Id | Name | Layer | Depending on | | --- | ---------------- | -------------- | ------------------- | | 1 | Page | Presentation | Domain, Application | | 2 | Flow | Presentation | Domain, Application | | 3 | Bloc | Application | Domain | | 4 | Cubit | Application | Domain | | 5 | ServiceInterface | Domain | - | | 6 | Entity | Domain | - | | 7 | ValueObject | Domain | - | | 8 | ServiceImpl | Infrastructure | Domain | | 9 | Dto | Infrastructure | Domain | ### 1. Page Inject Bloc/Cubit into the widget tree Use state from Bloc/Cubit to render UI ### 2. Flow Inject Bloc/Cubit into the widget tree Add new sub navigator/router into the widget tree ### 3. Bloc Calc state from Services ### 4. Cubit Calc state from Services ### 5. ServiceInterface Define interfaces to get, aggregate, manipulate, delete Entities/ValueObjects ### 6. Entity Hold immutable data ### 7. ValueObject Validate primitives and Entities ### 8. ServiceImpl Implement ServiceInterface depending on environment (fake, production, stage, ...) ### 9. Dto Transfer raw data (e.g json, xml, ..) to Entity
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up