[Study] 개발 공부
[Study] '--save-dev' 왜, 언제 쓰는지 아시나요?
지공A
2025. 3. 25. 15:17
패키지 설치 때 아무 생각 없이 설치하던 이번에 타입스크립트 rtk를 설치하면서 --save-dev를 왜 쓰는지 궁금해졌다.
--save-dev는 개발 의존성(development dependency) 으로 설치하겠다는 의미다.
사용하는 기준
- npm install some-package → 실행에 필요한 의존성
앱이 동작할 때 꼭 필요한 패키지들 (예: react, redux, @reduxjs/toolkit 등) - npm install --save-dev some-package → 개발할 때만 필요한 의존성
빌드, 타입 검사, 테스트 등에만 필요한 것 (예: @types/react-redux, eslint, typescript 등)
앱이 실행되기 위해 꼭 필요한 패키지 | react, react-dom, react-router-dom, axios, redux, @reduxjs/toolkit 등 | npm install |
개발 중에만 필요한 패키지 (타입, 도구, 테스트 등) | @types/패키지명, typescript, eslint, prettier, webpack, vitest 등 | npm install --save-dev or -D |
예시
react-redux | 리액트에서 리덕스를 쓰게 해주는 핵심 라이브러리 | npm install |
@types/react-redux | 타입스크립트용 타입 정의 파일 (개발 중만 필요) | npm install --save-dev |
eslint | 코드 스타일 검사기 (앱 실행엔 필요 없음) | npm install --save-dev |
axios | 서버랑 통신할 때 필요한 HTTP 클라이언트 (앱 실행 시 필요) | npm install |
공식 문서나 npm 페이지를 잘 보면 "This is only needed for development" 같은 문구가 써있기도 하다.