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.
		
		
		
		
		
			
		
			
				
					
					
						
							33 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							33 lines
						
					
					
						
							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](https://en.wikipedia.org/wiki/Domain-driven_design) 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](Entities.md)
 | |
|   * Hodnotové objekty
 | |
|   * [Repozitáře](Repositories.md)
 | |
|   * Doménové služby
 | |
|   * Specifikace
 | |
| * **Aplikační vrstva**
 | |
|   * [Aplikační služby](Application-Services.md)
 | |
|   * [Objekty přenosu dat (DTOs)](Data-Transfer-Objects.md)
 | |
|   * Jednotka práce |