The 4-Layer Architecture is a specific N-Tier Software Architecture, that especially used within object oriented design. It separates the application structure into four distinct layers:
- Presentation aka User Interface: the client, whatever that is (web browser, mobile, desktop, …)
- Application aka Routing: thin; in between UI and actual business logic; e.g. controller in MVC;
- Business aka Domain: the actual business models and rules; that what Domain Driven Design is about
- Infrastructure: Anything below, that above may require or control or be build upon
Each layer may only communicate with / know of downwards located layers.