Introducing clean architecture
So, what on earth is clean architecture? In a nutshell, clean architecture is a principle of organizing software architecture to keep developers away from the difficult refactoring of the application in the future. Clean architecture helps you build a service for a specific domain model that prepares it for microservice architecture.
Here is a diagram of clean architecture in ASP.NET applications:
In clean architecture, two layers must be the core or center of the structure. These layers are the domain layer, which contains most of your entities, enums, and settings. The application layer keeps most of your Data Transfer Objects (DTOs), interfaces, mappings, exceptions, behaviors, and business logic.
The difference is that the enterprise logic could be shared across many systems, whereas the application logic or business logic is specific. Now, rather than having the core dependent...