더북(TheBook)

4.2.3 클라이언트에게 필요한 것 이상을 제공하지 마라

정보 시스템에서는 동일한 도메인 엔터티를 애플리케이션의 다른 부분에서 재사용하는 경우가 흔하다. 예를 들어 리포지터리에서 가져온 엔터티를 서비스가 사용하고, 그 후 요청한 클라이언트에게 되돌려준다(예를 들어 JSON 직렬화 후에 전달할 수 있다). 기존 클래스를 재사용하는 것이 너무 쉽기 때문에 클라이언트의 요구가 다르더라도 기본 클래스를 그대로 사용한다.

가장 흔히 보는 재사용 유형이므로, 애플리케이션의 다양한 계층에서 같은 엔터티를 공유하는 사례에 초점을 맞춰 살펴보자(그림 4-2 참조).

▲ 그림 4-2 같은 엔터티를 여러 계층에서 함께 사용하기 때문에 원하지 않는 결합이 발생한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.