JavaScript의 현대 모듈 소개
이미 클로저를 통한 모듈로 작업해 보셨을 것입니다. 현대 JavaScript에는 각 모듈을 별도의 파일에 배치한 다음 필요할 때 다른 파일에 연결할 수 있고, 필요한 변수와 함수만 내보낼 수 있는 더 편리한 모듈이 등장했습니다.
원래 이러한 모듈은 JavaScript 표준에 규정되어 있지 않았고 단지 커뮤니티에서 개발되었습니다. 그 결과 AMD, CommonJS, UMD 등 매우 다양한 모듈 시스템이 등장했습니다.
그 후 JavaScript 표준에 자체 모듈이 포함되었습니다. 이를 ES 모듈이라고 합니다. 이로 인해 커뮤니티에서 개발된 모듈은 급속히 구식이 되었으며 사용하지 않는 것이 좋습니다.
NodeJS가 처음에 CommonJS 모듈로 작동했고, 지금도 호환성을 위해 기본적으로 이를 사용하고 있으므로, CommonJS 모듈에만 주의를 기울일 가치가 있습니다.
또한, 다양한 라이브러리 연결 지침에서 ES 버전이 아닌 정확히 CommonJS 버전에 대한 설명을 종종 접하게 될 것입니다. 따라서 CommonJS 코드를 ES로 수정하는 방법을 이해해야 합니다.
또 다른 뉘앙스가 있습니다. 모듈이 이제 JavaScript 표준에 규정되었지만, (아직) 브라우저에서는 그냥 작동하지 않습니다. 이를 위해서는 인기 있는 빌드 도구 중 하나를 사용해야 합니다.