Clean Architecture

E173638

Clean Architecture is a software design philosophy and set of principles, popularized by Robert C. Martin, that emphasizes separation of concerns, testability, and independence from frameworks, databases, and user interfaces.

All labels observed (4)

How this entity was disambiguated

Statements (55)

Predicate Object
instanceOf architectural pattern ⓘ
software architecture style ⓘ
software design philosophy ⓘ
alsoKnownAs Clean Architecture by Uncle Bob ⓘ
linked to: Clean Architecture
category software architecture ⓘ
software design patterns and principles ⓘ
software engineering ⓘ
coreConcept dependency rule ⓘ
entities as enterprise business rules ⓘ
frameworks and drivers ⓘ
interface adapters ⓘ
layers of software ⓘ
use cases as application core ⓘ
creator Robert C. Martin ⓘ
dependencyDirection source code dependencies point inwards ⓘ
describedIn Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
linked to: Clean Architecture

blog posts by Robert C. Martin ⓘ
emphasizes independence from databases ⓘ
independence from external agencies ⓘ
independence from frameworks ⓘ
independence from user interfaces ⓘ
separation of concerns ⓘ
testability ⓘ
goal ease of change ⓘ
flexibility ⓘ
independence from infrastructure ⓘ
long-term sustainability of software ⓘ
maintainability ⓘ
testability ⓘ
hasLayer entities layer ⓘ
frameworks and drivers layer ⓘ
interface adapters layer ⓘ
use cases layer ⓘ
influencedBy Clean Code principles ⓘ
Hexagonal Architecture ⓘ
Onion Architecture ⓘ
SOLID principles ⓘ
Screaming Architecture ⓘ
promotes UI-agnostic design ⓘ
boundary separation ⓘ
database-agnostic design ⓘ
dependency inversion principle ⓘ
framework-agnostic design ⓘ
inversion of control ⓘ
test-first or testable design ⓘ
use-case driven design ⓘ
recommends business rules independent of UI ⓘ
business rules independent of database ⓘ
business rules independent of external services ⓘ
defining boundaries via interfaces ⓘ
isolating side effects at the outer layers ⓘ
usedFor enterprise applications ⓘ
microservices ⓘ
mobile applications ⓘ
web applications ⓘ

How these facts were elicited

Referenced by (13)

Full triples — surface form annotated when it differs from this entity's canonical label.

Robert C. Martin → isKnownFor → Clean Architecture ⓘ
Robert C. Martin → hasNotableWork → Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
linked to: Clean Architecture
Robert C. Martin → knownFor → Clean Architecture book ⓘ
subject linked to: Uncle Bob
linked to: Clean Architecture
Robert C. Martin → hasNotableWork → Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
subject linked to: Uncle Bob
linked to: Clean Architecture
Robert C. Martin series → notableWork → Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
linked to: Clean Architecture
Robert C. Martin series → hasVolume → Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
linked to: Clean Architecture
The Clean Coder → relatedWork → Clean Architecture ⓘ
Clean Architecture → alsoKnownAs → Clean Architecture by Uncle Bob ⓘ
linked to: Clean Architecture
Clean Architecture → describedIn → Clean Architecture: A Craftsman’s Guide to Software Structure and Design ⓘ
linked to: Clean Architecture
Onion Architecture → relatedTo → Clean Architecture ⓘ
Screaming Architecture → relatedTo → Clean Architecture ⓘ
DIP → documentedIn → Clean Architecture ⓘ