mirror of https://github.com/abpframework/abp
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.8 KiB
1.8 KiB
Domain Driven Design
Co je DDD?
ABP framework poskytuje infrastrukturu, která zjednodušuje implementaci vývoje založeného na DDD. DDD je definován ve Wikipedii takto:
Domain-driven design (DDD) je přístup k vývoji softwaru pro komplexní potřeby propojením implementace s vyvíjejícím se modelem. Předpoklad DDD je následující:
- Primární zaměření projektu je na jádře domény a doménové logice;
- Zakládání komplexních návrhů na modelu domény;
- Iniciování tvůrčí spolupráce mezi technickými a doménovými odborníky s cílem iterativně zdokonalit koncepční model, který řeší konkrétní problémy v doméně.
Vrstvy
ABP dodržuje principy a vzorce DDD pro dosažení vrstveného aplikačního modelu, který se skládá ze čtyř základních vrstev:
- Prezentační vrstva: Poskytuje uživateli rozhraní. Používá Aplikační vrstvu k dosažení uživatelských interakcí.
- Aplikační vrstva: Prostředník mezi prezentační a doménovou vrstvou. Instrumentuje business objekty k provádění specifických úloh aplikace. Implementuje případy použití jako logiku aplikace.
- Doménová vrstva: Zahrnuje business objekty a jejich business pravidla. Je jádrem aplikace.
- Vrstva infrastruktury: Poskytuje obecné technické možnosti, které podporují vyšší vrstvy většinou pomocí knihoven třetích stran.
Obsah
- Doménová vrstva
- Entity & agregované kořeny
- Hodnotové objekty
- Repozitáře
- Doménové služby
- Specifikace
- Aplikační vrstva
- Aplikační služby
- Objekty přenosu dat (DTOs)
- Jednotka práce