HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🏠
2차 팀 프로젝트: 오늘의 집
/
📠
사용 기술
📠

사용 기술

태그

자바 버전: 11

  • 18
  • 17
    • 레코드(16)
    • instance of 패턴 매칭(16)
    • 향상된 switch문(14)
    • 텍스트 블록(15)
  • 11 ✅
    • 17이상이면 어차피 코틀린으로 갈아타지 않았을까?
    • 모듈 시스템 도입(자바9)
    • 인터페이스 private 메서드
  • 8

빌드: gradle

  • gradle ✅
    • 요즘 대세
    • 단순해 보임
    • 학습 목표
  • maven
    • asciiDocs

데이터 계층: Data JPA + QueryDSL

  • Spring Data JPA ✅
  • 동적 쿼리
    • Criteria 메타 모델
    • QueryDSL ✅ _Item

DB: H2(초기 개발 환경) → MySQL

  • MySQL
    • 버전 8.0
    • Docker 이용하여 한 번에 공유
    • AWS 서버를 띄우고 거기서 사용하는 방식
      • 이건 배포 상황에 고민
  • H2
    • 개발 환경

사용 dependency

  • 스프링 웹
  • 웹 Validation
  • Spring RESTDocs
  • 롬복
    • Getter
    • NoArgsConstructor
    • RequiredArgsConstructor
    • Builder: 애매
    • private Setter: 고민
    • UtilityClass
  • 스프링 시큐리티
    • OAuth
  • Data JPA
    • H2(개발환경)
    • MySQL(운영)
    • p6spy(개발환경)
  • configuration-processor
  • 구아바✅
    • 생성자에서 검증 수행 용으로
 
 

CI → 조사해오겠습니다 (민재)

  • 왜 쓰나?
    • 자동화가 핵심
 

코드 리뷰

  • PR 시 테스트 코드 필수
 

테스트

  • TC; Test Coverage는 ≥ 70% 목표
  • H2 vs Docker MySQL
    • H2로 CI → 차후 MySQL
 

커밋 컨벤션

  • PR 단위
    • 에픽? 스토리? feat 단위?
    • 일단 해 보면서 맞춰 보자.
  • gitflow vs github flow
    • github flow✅
 

에러 핸들링

  • RestControllerAdvice
    • stack trace
  • 로깅
    • 메시지 → slack
    • 공부는 해보기
    •