Skip to content

백엔드 기술 스택 및 선정 이유

정회성 edited this page Jul 12, 2024 · 1 revision

Java17

1. 선택 이유

  • 이미 레벨1, 2에서 학습했기 때문에 팀원 전체의 추가학습이 필요하지 않다.

Spring Boot 3.3

1. 선택 이유

  • 이미 레벨1, 2에서 학습했기 때문에 팀원 전체의 추가학습이 필요하지 않다.
  • 최신 정식 릴리스 버전이다.

MySQL 8.4

1. 선택 이유

  • 스키마가 정형화되어 있기 때문에 RDBMS가 적합하다. 따라서 RDBMS 중에서 보편적으로 사용되는 MySQL을 선택한다.
  • 이미 레벨1, 2에서 학습했기 때문에 팀원 전체의 추가학습이 필요하지 않다.

Swagger

1. 고려한 기술

Swagger

  • 장점
    • 사용 방법이 편리하다.
    • 자동으로 문서를 생성 가능하다.
    • 어노테이션으로 쉽게 문서를 커스텀할 수 있다.
    • API 호출 기능이 있다.
  • 단점
    • 프로덕션 코드를 침범한다.
    • 문서와 코드의 불일치 가능성이 있다.

Spring REST docs

  • 장점
    • 테스트 기반으로 문서를 생성하므로, 문서와 코드의 불일치 가능성이 낮다.
    • 프로덕션 코드를 침범하지 않는다.
  • 단점
    • 세팅 및 사용이 다소 복잡하다.
    • 테스트 코드 작성에 투자해야하는 시간과 노력이 필요하다.

2. 선택 이유

  • 자동으로 문서를 생성해주며 어노테이션으로 쉽게 문서를 커스텀할 수 있다.
  • API 호출 기능이 있다.

Spring Data JPA

1. 선택 이유

  • 테이블 결과셋을 개발자가 직접 자바 객체로 매핑하지 않아도 된다.
  • 중복되는 CRUD 쿼리를 작성할 필요가 없어 생산성을 높일 수 있다.

AWS EC2

1. 선택 이유

  • 간편하게 서버를 배포할 수 있다.
  • 우아한테크코스로부터 비용을 지원 받을 수 있어 배포 비용 문제를 해결할 수 있다.

⚡️ 코드zap

프로젝트

규칙 및 정책

공통

백엔드

프론트엔드

매뉴얼

백엔드

기술 문서

백엔드

프론트엔드

회의록


Clone this wiki locally