문제

전시 서비스
Exhibit#publish

임시 저장된 전시 기록을 발행(영구 저장)하는 기능이다. exhibit->publication 으로 메시지를 요청하는데, publication#isPublished 을 호출해서 값을 가져와 스스로 판단한다. (Tell Dont Ask 위반)  이로 인해 publication의 캡슐화가 저해된다.

 

발행 객체는 현재 자료구조처럼 다뤄진다.

변경

유효성 검사 로직을 발행 객체의 책임으로 변경한다.

 

이하눌