-
[JS] package.json 이란공부 1/JS 2020. 10. 20. 19:02
강의로 node.js / NVM/NPM을 배웠다.
내가 이해한 바로는 대충 이렇다.
NVM : node version manager, nvm을 통해 간단한 명령어로 node를 설치하고, 다양한 버전을 손쉽게 옮겨다닐 수 있다.
NPM: 다양하고 필요한 모듈을 설치할 수 있는 모듈스토어
npm에서 필요한 모듈을 설치할 수 있다고 설명을 해두었는데, 여기서 필요한 모듈은 무엇인지 어떻게 알 수 있는가?
나는 내가 만든 프로그램에서 필요한 모듈을 따로 정리해두지 않아도 알 수 있을다.(과연 그럴까? 나는 나의 기억력을 믿지않는다.)
하지만 타인은 단번에 파악하기 어렵기 때문에 어떤 모듈이 필요한지 정리해 두어야 하고 정리해둔 문서(?)를 package.json이라고 한다.
코드스테이츠는 package.json을 이렇게 설명했다.
전자제품을 보러 갔을 때 제품 카탈로그가 바로 package.json이라 생각할 수 있습니다.
카탈로그만 보면 어떤 제품이 있는지 파악할 수 있는 것처럼 package.json만 보면 어떤 모듈이 들어가 있는지를 알 수 있습니다.찰떡같은 비유라고 생각했다.
- package.json에 있는 모듈 다운받는 방법
나는 하나하나 찾아 다운받는 것이라 생각했는데 생각보다 간단한 방법이 있었다.
npm install
해당 명령어를 입력하면 필요한 모듈을 전체적으로 다운받아주고 해당 모듈은 node_modules라는 이름의 새 디렉토리에 저장된다.
- package.json 용어 1. dependencies
해당 프로그램이 '실행'되기 위해 반드시 필요한 모듈목록이 적혀있다.
"dependencies": { "react": "^16.8.6", }
- package.json 용어 2. devDependencies
프로그램을 '개발'하는 환경에서 필요한 모듈들이 적혀있다. 이를테면 mocha와 같은 테스트모듈 혹은 코드모양을 잡아주는 모듈 등..
"devDependencies": { "jest": "^2.3.0", "eslint" : "^2.0.0" }
- package.json 용어 3. scripts
npm으로 실행시킬 수 있는 명령어를 정의한다.
명령어:동작 형식으로 작성한다.
"scripts": { "start": "node app.js", "test": "node test.js", }
예시코드는 코드스테이츠 강의를 참고하였습니다.
'공부 1 > JS' 카테고리의 다른 글
[JS] Math 메소드 (0) 2020.10.22 [JS] arrow function (화살표함수) (0) 2020.10.20 [JS] 고차함수 학습목표 (0) 2020.10.15 [JS] 배열관련 미완성정리 (2) 2020.10.15 [JS] Scope (0) 2020.09.23