Metadata

Highlights

  • This architecture is not appropriate for small websites. It is appropriate for long-lived business applications as well as applications with complex behavior.
  • It emphasizes the use of interfaces for behavior contracts, and it forces the externalization of infrastructure.
  • The biggest offender (and most common) is the coupling of UI and business logic to data access.
  • Historically, the industry has modified data access techniques at least every three years;
  • all code can depend on layers more central, but code cannot depend on layers further out from the core.
  • The first layer around the Domain Model is typically where we would find interfaces that provide object saving and retrieving behavior, called repository interfaces.
  • Out on the edge, we would find a class that implements a repository interface.
  • Hexagonal architecture and Onion Architecture share the following premise: Externalize infrastructure and write adapter code so that the infrastructure does not become tightly coupled.