C# Interview Question #158
What is Clean Architecture?
Design Patterns & Production Architecture Senior Advanced
Quick Interview Answer
Clean Architecture organizes software so core business rules do not depend directly on frameworks, databases, UI technology, or external infrastructure.
Detailed Explanation
Clean Architecture organizes software so core business rules do not depend directly on frameworks, databases, UI technology, or external infrastructure.
A common structure includes Domain, Application, Infrastructure, and Presentation layers or projects. Dependencies generally point inward toward business rules and abstractions.
For an ASP.NET Core application, controllers belong near the presentation boundary, use cases or application services coordinate business operations, domain types represent core rules, and infrastructure implements persistence or external integrations.
The goal is maintainability and clear dependency boundaries, not maximizing the number of projects or layers.