3 Layer Architecture
A three-layer architecture is a common software design pattern that divides an application into three distinct layers.
A layer is a logically separated part of the application.
Presentation Layer
- Handles user clicks, HTTP requests, and provides the API for user interaction.
Domain Layer
- Domain(business) logic of the application. This layer handles data and converts it to other data structures.
Data Access Layer
- Provides access to the database and manages transactions.
Note
Presentation Layer
can initiate calls to code from Domain Layer
, not vice versa.
Domain Layer
can initiate calls to code from Data Access Layer
, not vice versa.