[architecture Series Hexagonal] 04.frameworkhexagon
April 13, 2025
Adapter
- 헥사고날의 어댑터와 GOF의 어댑터는 맥락적으로 서로 다른 인터페이스, 프로토콜을 호환하게 한다는 의미에서 같다.
- 헥사고날에서에서는 프로토콜, 다른 기술 간 호환을 목적으로 한다.
- GOF는 인터페이스 간 호환을 목표로 한다.
- adapter가 포트를 사용하는 식으로 구성된다.
- 입력, 출력 adapter는 모두 프레임워크 핵사곤 끝에 있는 부분이다.
- 입력 adapter는 Driving Operation을 허용하기 위한 입구이다.
입력 adapter
- UseCase의 목표를 달성하기 위해서 입력 포트가 수행하는 오퍼레이션의 수행 방법을 지정해 유스케이스를 구현하는 수단이다.
- stimulus(자극)을 받아야 trigger가 된다.
- 내부에서 UseCase에 대한 의존성을 가진다.
- 프로토콜에 따라 여러 구현을 할 수 있으며, 이를 통해서 UseCase 하나에 여러 방식으로 통신할 수 있는 입구를 만들 수도 있다.
출력 adapter
- 입력 adapter와 함께 프레임워크 헥사곤을 구성하는 두 번째 컴포넌트다.
- driven operation을 처리하는 것이다.
- 드리븐 오퍼레이션은 일부 데이털르 보내거나 받기 위해 외부 시스템과 상호작용하는 헥사고날 애플리케이션 자체에 의해 시작된 오퍼레이션이다.
- 출력 adapter는 이러한 상호 작용이 발생하는 방법을 구체적인 용어로 설명할 책임이 있다.
- 외부 통합을 허용하기 위해서 사용할 수 있는 기술을 결정한다.
- 기술적인 관심사로부터 비즈니스 로직을 보호하기 위해 존재한다.