Anurag Agarwal dda09535e6 Resolves checkstyle errors for guarded-suspension, half-sync-half-async, hexagonal (#1064)
* Reduces checkstyle errors in guarded-suspension

* Reduces checkstyle errors in half-sync-half-async

* Reduces checkstyle errors in hexagonal
2019-11-10 19:01:32 +02:00
..
2019-10-30 21:12:10 +02:00
2019-10-12 20:05:54 +03:00
2019-10-30 21:12:10 +02:00

layout, title, folder, permalink, pumlformat, categories, tags
layout title folder permalink pumlformat categories tags
pattern Hexagonal Architecture hexagonal /patterns/hexagonal/ svg Architectural
Java
Difficulty-Expert

Also known as

  • Ports and Adapters
  • Clean Architecture
  • Onion Architecture

Intent

Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and databases.

Hexagonal Architecture class diagram

Applicability

Use Hexagonal Architecture pattern when

  • When the application needs to be independent of any frameworks
  • When it is important that the application highly maintainable and fully testable

Tutorials

Real world examples

  • Apache Isis builds generic UI and REST API directly from the underlying domain objects

Credits