Post

간편결제 실습

간편결제 실습

필기 내용

  • EqualsAndHashCode 이거를 쓰면 커스텀 클래스에 대해서 내용 기반으로 equals 메서드를 쉽게 구현할 수 있음.

  • 왜 validation을 직접 구현해서 썼을까??

  • lombok의 value Annotation에 대해서. @Value 어노테이션은 Lombok 라이브러리에서 제공하는 어노테이션으로, 다음과 같은 역할을 합니다: 불변 클래스 생성: 모든 필드를 final로 설정하여 불변 클래스를 만듭니다. Getter 메서드 생성: 모든 필드에 대한 getter 메서드를 자동으로 생성합니다. 생성자 생성: 모든 필드를 인자로 받는 생성자를 자동으로 생성합니다. equals()와 hashCode() 메서드 생성: equals()와 hashCode() 메서드를 자동으로 생성합니다. toString() 메서드 생성: toString() 메서드를 자동으로 생성합니다. 이 어노테이션을 사용하면 코드가 간결해지고, 수동으로 작성해야 하는 반복적인 코드가 줄어듭니다.
  • 코드 자체를 진짜 Domain Driven Develop한게 눈에 띈다.
    • DDD에서 말하는 Entity와 Jpa의 Entity를 구분해서 작업.
  • 특징
    • controller의 파라미터는 ? xxRequest
    • service의 파라미터는 ? xxCommand
    • xxRequest -> xxCommand 전환은 컨트롤러단에서 진행.
  • 왜그럴까?
    • port > in에 서비스단 인터페이스를 넣어놓았다.
      • 내가 알기로는 여기에 외부에서 호출하는 것에 대한 인터페이스를 넣는다고 들었는데, 보통 http request방식을 쓰고, 그러면 컨트롤러의 인터페이스를 넣어야하는 것이 아닌가? 하는 의문이 들음.
  • 용어 설명
    • jpa에서 쓰는 엔티티 -> xxJpaEntity
    • jpa쓰기위해 사용하는 레포지토리 -> SpringDataXXXXRepository
    • service 단 인터페이스 지칭 -> xxUseCase
    • DB와 상호작용할때 사용하는 클래스(내가 그전까지 repository라고 부르던것) -> PersistenceAdapter
    • 도메인 객체와 jpaEntity간에 변환할때 쓰는 클래스 -> xxxMapper

정리

  • Part2 -> ch3 실습1 완료.

next

  • 다음강의 부터 빠르게 스킵해가나며 필요한 부분만 맞춤형으로 실습.
    • 도커 플러그인 실습 필요해보임.
This post is licensed under CC BY 4.0 by the author.