The hexagonal architecture, also known as the ports and adapters architecture, separates the business logic of an application from the infrastructure concerns, allowing the application to be tested and deployed in different environments.
The builder pattern separates the construction of a complex object from its representation, allowing the same construction process to create different representations.