ECMAScript(JavaScript)가 Ajax, JSON, jQuery가 등장함으로서 널리 사용 되어지고 우리에게 익숙해졌다면 서버의 실행 환경을 위한 Node.js의 등장으로 JavaScript는 황금기를 맞이하게 되었습니다. 이 글에서는 Node.js를 시작하기 전에 시스템에서 필요한 Node.js의 실행환경에 대해 이야기 합니다.
Node.js와 npm
Javascript가 황금기를 맞이하게 되는 결정적인 이유는 Node.js를 통해 Back-end에서도 동작하는 런타임 환경을 제공하게 된 것 뿐만 아니라 Node.js의 패키지 도구인 npm이 거대한 오픈소스 생태계로 발전한 것이 가장 결정적인 역할을 한 것으로 보인다.
npm은 JavaScript 패키지의 저장소일 뿐만 아니라 시스템에서 패키지 관리할 수 있는 다양한 명령어를 제공한다.
npm은 JVM 진영의 Maven Central, jCenter나 Python 진영의 PYPI와 유사하다.
우리는 npm을 통해서 Back-end, Front-end 구분 없이 JavaScript 기반으로 개발된 다양한 패키지를 사용 할 수 있고, 먼저 npm을 사용하기 위해서는 Node.js를 시스템에 설치해야 한다.
운영체제에 Node.js가 설치되어 있지 않다면, 아래와 같이 Terminal에서 Node를 설치하도록 한다.
1
$ brew install node
설치가 완료되면 Node.js와 npm의 버전을 확인해보자.
1 2
$ node -v $ npm -v
npm의 아래의 옵션을 통해 yarn, gulp를 시스템의 전역에서 사용할 수 있도록 설치할 수 있다.
package.json에 정의된 script는 아래와 같이 npm run 명령으로 실행하며,
1
$ npm run compile
test, start 명령은 run을 생략할 수 있다.
1
$ npm test
1
$ npm start
웹 애플리케이션인 경우 main에 지정된 경로를 통해서 start명령을 통해 서버를 실행할 수 있다.
npm 모듈 배포하기
npm 저장소에 자신의 모듈을 배포하는 방법은 비교적 쉬운 편이다.
사용자 추가
1
$ npm adduser
테스트
1 2 3
$ mkdir ../install-test $ cd ../install-test $ npm install ../my-npm-module/
배포
1
$ npm publish
Node.js의 버전관리 도구 nvm
한 시스템에서 다양한 프로젝트 그리고 프로젝트별로 Node의 버전을 다르게 사용하는 경우가 있다. 이 의미는 A 프로젝트에서 Node의 v4 버전을 사용해 유지 보수하면서 B 프로젝트에서는 v6 버전을 사용하는 것을 말한다. 뿐만 아니라 Node REPL에서도 지정한 버전을 따르게 된다.
$ yarn global add create-react-app --prefix /usr/local # the `create-react-app` command is now available globally: $ which create-react-app $ /usr/local/bin/create-react-app $ create-react-app