React 개발 - Vite

thisisyjin·2023년 8월 16일
0

TIL 📝

목록 보기
85/113

Vite

  • cf> CRA(Create React App)
  • 빌드 속도, 새로운 코드 적용 시 반영 속도 (Feedback 속도) 개선
  • Native ESM 기반. (서버를 먼저 시작하고, 서버 요청이 있을 때만 가져오면 됨)

원리

  • 애플리케이션 모듈을 종속성과 소스코드로 나누어 개발 서버 시작 시간을 개선함.
  • Dependencies: 개발 중 자주 변경되지 않는 일반 JS.
  • Source Code: 변환이 필요한 코드 (JSX, CSS, Vue 등)
  • 모든 소스 코드를 동시에 로드할 필요 X.

ESM (EcmaScript Module)

  • ECMAScript 모듈(ESM)은 웹에서 모듈을 사용하기 위한 사양입니다.
  • 모든 최신 브라우저와 권장하는 웹 모듈 코드 작성법에서 지원됩니다.

HMR (Hot Module Replace)

  • 파일 편집 시 전체 번들을 빌드하지 않고, 변경된 모듈 자체를 교체해서 빠르게 화면에 반영되게 하는 것.
  • Vite에서 HMR은 기본 ESM을 통해ㅐ 수행됨.

Typescript Transpiling 속도

  • CRA의 경우에는 어느정도의 세팅이 필요함.
  • Vite는 기본적으로 세팅이 되어있고, TypeScript 사용을 지원함.
  • esbuild를 이용하여 transpiling하므로 훨씬 빠른 속도.
  • BUT> 타입 체크 기능은 없다. (에디터에서 제공하는 기능이므로 OK)

CRA vs. Vite

ViteCRA
설치 시간30초1분 40초
File Size45MB220MB
BuildFileSize150KB553KB
  • 그렇다면, 무조건 Vite를 쓰는게 좋은지?
  • 안정성 측면에 있어서는 CRA가 좋다.
  • 상황에 맞게 판단해서 사용해보자!
profile
기억은 한계가 있지만, 기록은 한계가 없다.

1개의 댓글

comment-user-thumbnail
2023년 8월 16일

이런 유용한 정보를 나눠주셔서 감사합니다.

답글 달기