[스프링 핵심 원리-기본편] 스프링 핵심 원리 이해1 - 예제

둡둡·2022년 10월 9일
0

Spring-Basic

목록 보기
3/10

비즈니스 요구사항과 설계

  • 회원

    • 회원 가입과 회원 조회를 할 수 있다
    • 회원 등급은 일반과 VIP가 있다
    • 회원 데이터는 자체 DB와 외부 시스템 연결 중 미확정이다
  • 주문과 할인

    • 회원 등급에 따라 할인 정책을 적용한다
    • VIP는 1000원을 할인해주는 고정 할인을 적용한다
    • 단, 위 할인 정책은 변경 가능성이 높고 아예 적용하지 않을 수도 있다(미확정)

회원 도메인

  • 회원 도메인 설계
    • Grade(Basic, VIP), Member(id, name, grade)
    • MemberService(join, findMember)
      • MemberServiceImpl
    • MemberRepository(save, findById)
      • MemoryMemberRepository

주문과 할인 도메인

  • 주문과 할인 도메인 설계
    • Order(memberId, itemName, itemPrice, discountPrice) : 회원아이디, 주문아이템, 할인된 가격
    • DiscountPolicy.discount(member, price)
      • FixDiscountPolicy: VIP등급인 경우, price에서 -1000원 계산
    • OrderService.createOrder(memberId, itemName, itemPrice)
      • OrderServiceImpl
        회원조회(MemberServiceImpl.findById)
        할인적용(FixDiscountPolicy.createOrder)
        주문결과 반환(return new Order)

[출처] 스프링 핵심 원리 - 기본편, 김영한

profile
괴발개발라이프

0개의 댓글