728x90
본격적으로 주문과 할인까지 만들어보자!
- 주문과 할인 정책 회원은 상품을 주문할 수 있다.
- 회원 등급에 따라 할인 정책을 적용할 수 있다.
- 할인 정책은 모든 VIP는 1000원을 할인해주는 고정 금액 할인을 적용해달라. (나중에 변경 될 수 있다.)
- 할인 정책은 변경 가능성이 높다.
- 회사의 기본 할인 정책을 아직 정하지 못했고, 오픈 직전까지 고민을 미루고 싶다.
- 최악의 경우 할인을 적용하지 않을 수 도 있다. (미확정)
클라이언트는 주문 서비스에 주문 생성을 요청한다. 그러면 주문 서비스는 회원 저장소에서 회원을 조회한다.
주문 서비스는 회원 등급에 따른 할인 여부를 할인 정책에 위힘하고, 주문 서비스는 할인 결과를 포함한 주문 결과를 반환한다.
역할과 구현까지 만든 다이어그램!
역할과 구현을 분리해서 자유롭게 구현 객체를 조립할 수 있게 설계된다. 이렇게 하면 회원 저장소는 물론이고, 할인 정책도 유연하게 변경할 수 있다.
그렇게 기획자는 정액 할인 정책과 정률 할인 정책이 바뀌게 된다면 이 부분만 바꿔주면 된다는 것이다~!
클라이언트가 서비스 구현체를 호출하면 new해서 메모리 저장소를 호출한다.
역할들의 협력 관계를 그대로 재사용 할 수 있다.
회원을 메모리가 아닌 실제 db에서 조회하고, 정률할인 정책을 지원해도 주문 서비스를 변경하지 않아도 된다.
협력 관계를 그대로 재사용 할 수 있다.
728x90
'BackEnd > JAVA' 카테고리의 다른 글
회원 도메인 만들기(1) (1) | 2022.05.04 |
---|---|
자바로 회원 도메인 만들기(0) (1) | 2022.05.04 |