• 카테고리

    질문 & 답변
  • 세부 분야

    기타 (개발 · 프로그래밍)

  • 해결 여부

    미해결

캡슐화 연습 2번

22.08.23 17:14 작성 조회수 188

0

강의 수강 중 캡슐화 2번을 리팩토링 하는 과정에서 궁금한 점이 있습니다!

getFrequentRenterPoints()를 Movie에서 구현을 해주셨는데 daysRented를 파라미터로 넘겨서 RenterPoints를 계산하는 과정에서 대여기간 조건을 2일, 3일 이런식으로 변경점이 생겼을 때 Movie 클래스에서 변경하면 된다고 하셨는데 대여기간 조건 변경이 생겼는데 Movie에서 로직을 변경하는게 맞는가? 라는 의문점이 들었습니다. 

저의 생각은 renterpoint를 계산할 때 Rental 클래스에서 기존의 방식처럼 구현하는게 나중에 변경점이 생겼을 때 더 쉽게 찾을 수 있지 않을까 생각합니다.

혹시 제가 놓치고 있는 부분이 있을까요??

답변 1

답변을 작성해보세요.

0

선택이긴 한데, 이 예에서는 Movie의 priceCode가 포인트 계산의 가장 큰 기준이 되니까 Rental 보다는 Movie에 위치하는 게 더 알맞다고 생각합니다. 영상에서 언급했듯이 마틴 파울러가 쓴 리팩토링 책의 예제를 차용한 것이니, 리팩토링 책을 읽어보시면 도움이 될겁니다.