Interface-Based Design
Kind: principle
Layer: Contracts Core
Record: architecture:interface-based-design
Severity: recommended
Scope: class, module, service
Canonical: Ontology
A design rule that a module depends on interfaces, and the implementation behind each one is supplied from outside.
Listed in Architecture principles, after Stable Interfaces and before Contract-First Design.