Node.js, NPM, NVM, NPX? 헷갈리는 개념&용어 정리

김진원·2022년 7월 15일
0

React, Svelte 등 웹 프레임워크 기술을 배우게 되면서, 익숙하지 않은 Shell 명령어를 타이핑할 때 어떨 때는 npm, 또 어떨 때는 npx라는 명령어를 사용한다. 철자가 비슷하면서 개념도 비슷한 거 같아 한 번 제대로 정리를 해보고자 한다.


Node.js

Javascript를 웹 브라우저 바깥에서 실행할 수 있게 해주는 런타임 환경

Node.js는 웹 브라우저에서 동작하는 Javascript를 브라우저 바깥에서 실행할 수 있게하는 런타임(실행환경)이다. 웹 프레임워크를 통해 웹 개발을 하기 위해서 반드시 설치해주어야 한다.

NPM (Node Package Manager)

어플리케이션 프로젝트의 패키지, 모듈을 관리 및 설치하는 도구

NPM(Node Package Manager)은 Node.js를 설치할 때 자동으로 설치되는 패키지 관리 도구이며, 동시에 다양한 패키지를 다운로드 받을 수 있는 웹사이트의 이름이기도 하다. Node.js에서 모듈은 여러 함수의 집합, 한 어플리케이션을 구성하는 개별적 요소를 의미하며, 이러한 모듈을 프로젝트에 설치할 때 NPM을 주로 사용하게 된다. 비슷한 것으로 yarn이라는 패키지 매니저도 있지만, 이번에는 NPM에 대해서만 알아보기로 한다.

NVM (Node Version Manager)

컴퓨터에 Node.js의 다양한 버전을 설치하고 필요에 따라 버전을 변경할 수 있게 하는 도구

NVM(Node Version Manager)은 Node.js의 설치 버전을 간편하게 바꾸거나 다양한 버전의 Node.js를 설치할 수 있게 해주는 버전 매니저이다. 협업을 하거나 다양한 Node.js 프로젝트를 진행할 때 라이브러리, 프레임워크 간 Node.js의 버전 호환성 문제가 발생할 수 있다. 따라서 컴퓨터에 다양한 버전의 Node.js를 설치하고, 필요에 따라 사용할 Node.js의 버전을 간편하게 바꾸기 위해 사용한다.

NPX

NPM을 좀 더 편하게 사용할 수 있게 해주는 도구

NPX는 NPM의 5.2.0 버전부터 새로 추가된 도구로써, NPM을 좀 더 편하게 사용할 수 있게 해주는 명령어다. 5.2.0 버전 이상의 NPM을 설치 시 자동으로 NPX 또한 설치되며, 기존에 긴 NPM 명령어를 짧게 사용할 수 있게 하는 역할을 한다.

0개의 댓글