반응형

이 글의 동영상 강의입니다.

https://youtu.be/oHXHOzg9oxQ

 

이 글은 module에 대해 잘 정리되어 있는 아래 사이트를 참고해서 작성되었습니다.

nodejs의 module은 굉장히 중요한 개념입니다.

개발시에 module을 모르면 개발이 불가능하므로, 개념을 잘 이해하여야 합니다.

 

nodejs는 모듈 단위로 기능을 분리할 수 있습니다.

또한 분리된 기능을 조립하여 사용이 가능합니다.

 

nodejs module의 특징

nodejs의 module은

  • 업계표준인 CommonJS의 module 방식을 따르고 있습니다.
  • 파일과 1:1 대응 관계를 갖습니다.
  • 별도 scope을 갖기 때문에 전역 변수의 중복이 발생하지 않습니다.
  • module.exports 또는 exports를 통해 외부로 공개할 수 있습니다.
  • module.exports = exports 와 동일합니다.
  • require를 사용하여 외부에서 module을 사용 할 수 있습니다.
  • 변수(variable), 객체(object), 함수(function), 폴더(folder)를 module로 만들 수 있습니다.

변수를 사용한 예제

  • constants.js
module.exports = { 
    SEND_MAIN_PING: 'send_main_ping', 
};
 
  • index.js
const { SEND_MAIN_PING } =require('./constants')

console.log(SEND_MAIN_PING);

함수를 사용한 예제

  • sum.js
var sum = function(a,b){
    return a + ' + ' + b + ' = ' + a+b;
}

module.exports = sum;
  • index.js
const sum = require('./sum');

console.log(sum(1,10));

폴더를 사용한 예제

  • 폴더 구조는 다음과 같습니다.

폴더구조

  • module/index.js
module.exports = {
    sum: require('./sum'),
    minus: require('./minus')
}
  • index.js
const myModule = require('./module');

console.log(myModule.sum(1,10));

 

Core Module

nodejs에 기본적으로 포함되어 있는 module을 core module이라고 합니다.

core module은 require를 이용해 바로 사용할 수 있습니다.

const http = require('http');

 

외부 Module (NPM)

nodejs는 npm으로 설치한 외부 모듈을 사용할 수 있습니다.

따라서 npmjs.com에 배포되어 있는 모든 모듈을 자유롭게 이용할 수 있다는 장점이 있습니다.

  • npmjs.com에서 검색
    다음은 npmjs.com에서 nodejs의 서버 개발을 쉽게 해주는 express를 검색한 내용입니다.
    붉은색 박스에 보시면 설치법이 나와 있습니다.

  • npm으로 설치한 모듈도 동일하게 require를 통해 사용할 수 있습니다.
const express= require('express');

 

이상으로 nodejs의 module 사용법에 대해 알아보았습니다.

반응형

+ Recent posts