자바스크립트 노드 모듈 시스템의 이해 도움이 필요한 이유

Photo of author

By tutor

자바스크립트 노드 모듈 시스템의 이해 도움이 필요한 이유

자바스크립트 노드 모듈 시스템의 이해 도움이 필요한 이유

 

자바스크립트 노드 모듈 시스템의 이해

노드 모듈 시스템이란?

노드 모듈 시스템은 자바스크립트 코드의 모듈화와 재사용성을 가능하게 한다. 이를 통해 코드의 가독성과 유지보수성을 높일 수 있으며, 프로젝트 규모가 커질수록 보다 체계적인 모듈 관리가 필요해진다.

모듈 생성과 불러오기


// 모듈 생성 (example.js)
module.exports = {
    greeting: function() {
        console.log("Hello World!");
    }
}

위 예제는 `greeting` 함수를 가진 모듈을 생성하는 코드이다. 이를 다른 파일에서 사용하기 위해 다음과 같이 해당 모듈을 불러올 수 있다.


// 모듈 불러오기 (app.js)
const example = require("./example")

example.greeting() // "Hello World!"

모듈 공유와 충돌 방지

노드 모듈 시스템에서 모듈은 기본적으로 각각의 파일로 분리된다. 하지만 전역공간에서의 모듈 공유는 불가피하다. 따라서 모듈 내의 객체나 변수명이 충돌할 가능성을 고려해야 한다.


// 파일 1 (module-1.js)
const x = "test"
module.exports = { x }

// 파일 2 (module-2.js)
const x = "example"
module.exports = { x }

// 이후 모듈 불러오기 (app.js)
const module1 = require("./module-1")
const module2 = require("./module-2")

console.log(module1.x) // "test"
console.log(module2.x) // "example"

각 모듈은 독립적으로 존재하지만 변수명 충돌 문제가 발생하기 때문에 `const` 키워드를 사용하여 변수명 충돌을 방지할 수 있다.

외부 모듈 사용하기

노드 모듈 시스템을 통해 npm을 통해 설치한 모듈을 다음과 같이 불러올 수 있다.


const axios = require("axios")

axios.get("https://example.com/api").then((response) => {
    console.log(response.data)
}).catch((error) => {
    console.log(error)
})

노드 모듈 시스템은 자바스크립트 코드의 모듈화와 재사용성을 높이며,컴포넌트별 코드를 식별 가능하게 한다. 이를 통해 복잡성과 유지보수성 문제에 대한 대처를 가능케한다.

자바스크립트 노드 모듈 시스템은 모듈화와 코드 재사용성, 유지보수성등을 높이는 작업을 가능케 합니다.