[클론 코딩] 커피 주문관리(1)

suRan·2022년 8월 29일
0

🍃 SpringBoot

목록 보기
19/24

요구사항

작은 로컬카페

  • 전날 오후 2시~ 오늘 오후 2시까지 주문 모아서 처리

  • 현재 4개의 상품

  • 별도의 회원관리 x email로 고객 구문
    하나의 email로 여러 번 주문을 받더라도 하나로 합쳐서 다음날 배송

  • 고객에게 당일 오후 2시 이후의 주문은 다음 날 배송을 시작합니다. 라고 알려줌

  • API서버에서는 관리자 페이지까지 함께 제공

요구사항 분석

  • 도메인
    • 상품
    • 주문

환경설정

  • 의존성 추가

    • spring web
    • JDBC API
    • MySQL Driver
    • Thymeleaf
  • pom.xml에 H2추가

model

Product

Order

Email (VO)

  • 생성자
  • 이메일 포맷 검증
  • equal() and hashCode()
  • toString
  • Getter



  • email에 대한 단위테스트 생성
    • 생성자 validation 검증
    • Equal검증

새로 알게된 용어

TIP

  • 열거형
    열거형은 연관된 값들을 저장한다. 또 그 값들이 변경되지 않도록 보장한다. 뿐만 아니라 열거형 자체가 클래스이기 때문에 열거형 내부에 생성자, 필드, 메소드를 가질 수 있어서 단순히 상수가 아니라 더 많은 역할을 할 수 있다. 출처 : 열거형(enum)

  • hashCode() & equals()
    두 메소드는 항상 함께 오버라이드 되어야 한다. 출처 : [Spring] Spring 개발환경 설정

  • Assert클래스
    Spring Assert는 인수를 검증하고 조건에 맞지 않는 경우 IllegalArgumentException 또는 IllegalStateException를 발생시킨다.조건문을 단순화하고 반복적인 코드를 줄이는 역할을 한다.
    출처 : Spring boot - Assert 사용 예제

  • 단위테스트
    클래스 범주 내에서 작은 단위(함수 단위)의 기능에 대한 유효성을 검증하는 테스트
profile
개발 공부를 해라

0개의 댓글