[Node.JS] 모듈 내보내기

Hyun·2022년 1월 2일
0

Node.js

목록 보기
1/1
post-thumbnail

Node.js란?

  • Node.js는 Chrome V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경(Runtime Environment)으로 주로 서버 사이드 애플리케이션 개발에 사용되는 소프트웨어 플랫폼이다.
    브라우저 외부 환경에서 자바스크립트 애플리케이션 개발에 사용되며 이에 필요한 모듈, 파일 시스템, HTTP 등 Built-in API를 제공한다.

  • Node.js는 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 Request 처리 성능을 가지고 있다.

    • Node.js의 모든 API는 비동기방식
    • 단일 스레드 이벤트 루프 모델을 사용
  • 데이터를 실시간 처리하여 빈번한 I/O가 발생하는 SPA(Single Page Application)에 적합하다.
    (CPU 사용률이 높은 애플리케이션에 권장X)

  • Node.js에는 Socket.io라는 실시간 통신을 실현하는 라이브러리를 사용할 수 있어서 대량의 데이터 처리와 실시간 통신을 구현할 수 기능

    출처 : https://poiemaweb.com/nodejs-basics


터미널을 이용하여 node.js에서 자바스크립트 파일을 실행시켜보고, node.js가 기본적으로 제공하는 common.js라는 모듈시스템을 사용하는 것을 공부하였다.

clac.js 에 있는 함수를 index.js에서 쓰려면 index.js로 모듈을 내보내기 작업을 해줘야함
기능을 갖는 분리된 파일 각각을 모듈이라고 한다.
calc.js는 계산기능을 담당하는 분리된 모듈

clac.js에서 내보낸 모듈을 require라는 키워드에 경로(./)를 명시하면서 불러와서 출력을하면 내보낸 파일이 그대로 index.js에서 출력됨
즉, node.js에서 module.exports로 내보낸 모듈을 경로(./)와 reqire라는 내장함수를 이용하여 가져와서 사용할 수 있다.
조심해야 할 것은, reqire라는 내장함수와 module.export라는 내장함수는 node.js에 있는 내장함수이기 때문에 바닐라js에서는 사용이 불가능하다

이제 물러왔으니 사용을 해보자

이렇게 module.exports로 내보내고 내보낸 모듈을 경로(./)와 reqire로 명시해서 불러오는 이런 모듈시스템은 node.js가 기본적으로 제공하는 모듈시스템인 CommonJS라는 모듈시스템이다.
이 CommonJS말고도 es모듈이라는 모듈시스템이 존재한다.

모듈시스템은 모듈을 내보낼 수 있고, 불러와서 사용할 수 있는 그런 함수같은 기능을 제공하는 시스템이라고 생각하면 된다.

중요한 것은, node.js에서 모듈단위로 데이터를 내보내고 받아와서 사용할 수 있다는 점만 기억하기


Node에서 모듈이란?

  • 노드로 개발한 애플리케이션을 이루는 기본 조각
  • 미리 만들어진 파트들을 조립해서 물건을 만드는 것처럼, 관련된 코드들을 모아서 캡슐화해놓은 것을 모듈

출처 : https://edu.goorm.io/learn/lecture/557/%ED%95%9C-%EB%88%88%EC%97%90-%EB%81%9D%EB%82%B4%EB%8A%94-node-js/lesson/21938/%EB%85%B8%EB%93%9C%EC%9D%98-%EB%AA%A8%EB%93%88-%EA%B0%9C%EB%85%90

profile
FrontEnd Developer (with 구글신)

0개의 댓글