본문 바로가기

Node.js

Node.js 실행과 npm

Node.js 실행과 npm

저번 포스팅에서는 Node.js에 대해 간단히 알아보았고 설치를 했었는데 이번 포스팅에서는 Node.js를 실행해보고 npm이라는 것도 알아보겠다.


#1 Node.js REPL

REPL (입력 수행 출력 반복) 은 Node.js는 물론 대부분의 언어 (Java, Python 등)가 제공하는 가상환경으로, 간단한 코드를 직접 실행해 결과를 확인해 볼 수 있다.

터미널에서 다음과 같은 명령어를 실행해보자

그럼 프롬프트가 '>'로 변경될 것이다. 이 때부터 Node.js 코드를 실행해 볼 수 있다.

다음과 같이 입력해보자

Node.js 파일을 실행하려면 node 명령어 뒤에 파일명을 입력해주는데, 여기서 파일 확장자인 .js는 생략이 가능하다.

Node.js 코드를 실행할 수 있는 REPL에서 CTRL + C 를 두 번 누르면 REPL을 종료한다.

.exit를 입력해도 된다.


#2 Node.js 맛보기

위 #1에서 간단하게 REPL에서 실행을 해보았으니 직접 파일을 생성해보자.

독자분들이 사용하시는 에디터를 실행한 후 아래와 같은 내용으로 'app.js'를 생성한다.
const http = require('http'); (1)

http.createServer((request, response) => { (2)
    response.statusCode = 200;
    response.setHeader('Content-Type', 'text/plain');
    response.end('Hello Wolrd');
}).listen(3000);

console.log('Setver running at http://127.0.0.1:3000/'); (3)

이 코드에 대해 간단히 설명을 해보자면

(1) : http 모듈을 로딩하여 변수 http에 할당해주었다.
      모듈은 module.exports 또는 exports 객체를 통해 정의하고 외부로 공개한다. 공개된 모듈은 require 함수를 사용해 임포트한다.

(2) : http 모듈의 createServer([requestListener]) 메소드를 사용해 HTTP 서버 객체를 생성한다.
       HTTP 서버 객체는 EventEmitter 클래스를 상속한 것으로 request 이벤트가 발생하면 HTTP request를 처리해 response를 반환하는 'request Listener' 함수를 호출.
       이 request Listener 함수는 request와 response 객체를 전달받으며 HTTP request 이벤트가 발생할 때마다 한 번씩 호출된다.

(3) : createServer 메소드가 반환한 HTTP 서버 객체의 listen 메소드에 포트번호 3000을 전달해 서버를 실행한다.

위와 같이 작성한 app.js 파일의 경로에서 다음 명령으로 서버를 실행해준다.

이 문구가 뜨면 브라우저에서 "http://localhost:3000"에 접속하면 "Hello World"가 출력되는 것을 볼 수 있다.




#3 npm

이제 npm에 대해서 알아보도록 하겠다.

npm은 이전 포스팅에서 아주 간단히 설명했던 node package manager이다.
Node.js에서 사용할 수 있는 모듈을 패키지화 하여 모아둔 저장소 역할과 패키치 설치 및 관리를 위한 CLI를 제공한다.

#4 npm 설치

npm은 Node.js를 설치할 때 포함되어 있어 Node.js를 설치할 때 자동으로 설치가 되지만 Node.js보다 자주 업데이트되어 최신 버전이 아닐 수 있기 때문에 아래와 같은 명령으로 npm을 업데이트 해준다.

#4-1 npm을 사용해 패키지 설치 해보기

Node.js에서 사용할 수 있는 모듈인 패키지를 설치할 때는 npm install 명령어 뒤에 설치할 패키지 이름을 작성한다.

[ npm install <package name> ]

Node.js에서 이모지를 지원하는 node-emoji를 설치해보자. 디렉터리를 생성한 후 해당 디렉터리로 이동한다.

그런 다음, npm install 명령어로 node-emoji 패키지를 설치한다.

필자는 emoji 라는 디렉터리를 생성해 그 안에 node-emoji 패키지를 설치했다.

독자분들은 디렉터리 명이 다를 수 있으니 node-emoji를 설치한 디렉터리에서 node 명령어를 입력해 Node.js REPL을 실행시킨다.

실행시킨 후 node-emoji를 로드한 후 하트 이모지를 출력해보자.

하트  이모지가 예쁘게 출력된 모습을 볼 수 있다ㅎㅎ


#5 지역 설치, 전역 설치

npm install 명령어에는 지역 설치와 전역 설치 명령어가 존재한다.

이 옵션을 별도로 설정해주지 않으면 자동으로 '지역'으로 설치가 된다.


지역 설치 명령어는 아무 옵션도 지정해주지 않기 때문에 #4-1 에서 node-emoji를 설치한 방법과 같다.

지역 설치
[ npm install <package name> ]

전역에 패키지를 설치하려면 -g 옵션을 지정한다.

전역으로 설치된 패키지는 전역에서 참조할 수 있으며, 모든 프로젝트가 공통으로 사용하는 패키지는 -g 옵션을 주어 전역에 설치해준다.

전역 설치
[
npm install -g <package name> ]

전역에 설치된 패키지는 OS에 따라 설치 장소가 다르다

Window : c:\Users\%USERNAME%\AppData\Roaming\npm\node_module

macOS : /usr/local/lib/node_module


잘 이해가 되셨나요? 아직 저도 전문가는 아니지만 전문가가 되기 위해서 열심히 공부하고 있습니다.

독자님들도 열심히 파이팅 하셨으면 좋겠습니다!!

부족하지만 글 읽어주셔서 정말 감사드립니다ㅎㅎ

'Node.js' 카테고리의 다른 글

Node.js 소개 및 설치  (0) 2019.08.06