* #496 Add pipeline module to parent pom ✨ * #496: Add main application class and test for pipeline * #496: Checkstyle format and add log messages on pipeline stages 🎨 * #496: Fill readme sections of pipeline ✨ * #496: Javadocs and checkstyle formatting 🎨 * #496: Follow PMD checks and add more explanation as block comment on App.java * #496: Apply requested PR changes by iluwatar 🎨 * #970: Replace log4j usage on commander pattern to Slf4j API 🎨 * #970: Replace log4j usage on dao pattern to Slf4j API 🎨 * #970: Replace log4j usage on data mapper pattern to Slf4j API 🎨 * #970: Remove log4j dependency on data transfer object pom 🔥 * #970: Replace log4j usage on module pattern to Slf4j API 🎨 * #970: Replace log4j usage on serverless pattern to Slf4j API 🎨 This also removes the aws log4j dependency * #970: Remove unnecessary gitignore line for log4j.xml 🔥 * #970: Remove remaining remnants of log4j 🔥 * #970: Replace System.out logging with appropriate logging methods 🎨 * #970: Replace System.out method references to Logger::info 🎨
layout, title, folder, permalink, pumlformat, categories, tags
layout | title | folder | permalink | pumlformat | categories | tags | ||
---|---|---|---|---|---|---|---|---|
pattern | Hexagonal Architecture | hexagonal | /patterns/hexagonal/ | svg | Architectural |
|
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.
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
Presentations
Real world examples
- Apache Isis builds generic UI and REST API directly from the underlying domain objects