프리코스 끝났지만 어려웠던 4주 차 미션에 대해 다른 사람들로부터 피드백을 받고자 코드 리뷰 진행했고, Receipt 클래스에 대해 고민해볼만한 피드백을 받았다. 그 과정에서 책임 분리와 멤버 변수 관리에 대한 깊은 고민을 하게 되었다. 이 글에서는 받은 피드백에 대한 나의 생각을 정리해보고자 한다. 클래스 설계와 책임 분리에 대한 고민 ( Receipt 클래스 ) 첫번째 피드백 내용으로 "Receipt 클래스가 계산 로직을 포함하고 있으니, 이를 서비스 레이어로 옮겨 단일 책임 원칙(SRP)을 준수하는 것이 어떨까?"였다. Receipt 클래스는 많은(4개) 상태 필드를 가시고 있고 멤버십 할인, 프로모션 할인 등 다양한 계산 로직을 포함하고 있다. 이는 Receipt 클래스가 다음과 같은 두 가지 ..