-
5장 - 웹 어댑터 구현하기클린 코드(Clean Code)/만들면서 배우는 클린 아키텍처 요약 2023. 2. 25. 00:01반응형
웹 어댑터는 주도하는 인커밍 어댑터입니다.
외부로부터 요청을 받아 애플리케이션 코어를 호출하고 무슨 일을 해야 할지 알려줍니다.
이때 제어 흐름은 웹 어뎁터에 있는 컨트롤러에서 애플리케이션 계층에 있는 서비스로 흐릅니다.
어댑터의 책임
- HTTP 요청을 자바 객체로 매핑
- 권한 검사
- 입력 유효성 검증
- 입력을 유스케이스의 입력 모델로 매핑
- 유스케이스 호출
- 유스케이스의 호출을 HTTP로 매핑
- HTTP 응답을 반환
HTTP와 관련된 것은 애플리케이션 계층으로 침투해서는 안됩니다.
컨트롤러 나누기
컨트롤러는 너무 적은 것보다는 너무 많은 게 낫습니다.
클래스 코드가 많아지게 되면 파악하는데 난이도가 높아지게 됩니다.
가급적 메서드와 클래스명은 유스케이스를 최대한 반영해 지어내고 별도의 컨트롤러를 만들어내는 방식을 선호합니다.
유지보수 가능한 소프트웨어
유스케이스는 HTTP 요청과 연관되지 않았으며 웹 계층에서는 HTTP를 변환하는 작업만 수행합니다.
이로써 테스트하기 쉬워지며 유지 보수하는 동안에는 분명히 빛을 발할 것입니다.
'클린 코드(Clean Code) > 만들면서 배우는 클린 아키텍처 요약' 카테고리의 다른 글
7장 - 아키텍처 요소 테스트하기 (0) 2023.03.01 6장 - 영속성 어댑터 구현하기 (0) 2023.02.26 4장 - 유스케이스 구현하기 (0) 2023.02.24 3장 - 코드 구성하기 (0) 2023.02.22 2장 - 의존성 역전하기 (0) 2023.02.21