
웹팩은 오픈 소스 자바스크립트 모듈 번들러로, 자바스크립트 애플리케이션을 구축하는 방식을 현저히 변화시켰다. 웹팩이 정확히 어떤 일을 하는지 살펴보겠다.
require()와 import 문을 사용하여 다른 자바스크립트 파일 또는 JSON, CSS와 같은 다른 유형의 파일을 통합할 수 있다.웹팩은 npm(Node Package Manager)을 통해 쉽게 설치할 수 있다. 먼저 Node.js와 npm이 설치되어 있는지 확인해보자.
// 설치 명령어
npm install --save-dev webpack웹팩은 주로 두 가지 핵심 구성 요소인 엔트리(Entry)와 출력(Output)을 통해 작동한다.
엔트리 포인트는 웹팩에게 번들링을 시작할 위치를 알려주고 종속성 그래프를 따라가며 어떤 모듈을 번들할지 결정한다.
// webpack.config.js
module.exports = {
entry: './path/to/my/entry/file.js'
};출력 속성은 웹팩에게 번들을 생성한 후 어디에 출력할지와 이 파일들을 어떻게 이름짓는지 지시한다.
// webpack.config.js
const path = require('path');
module.exports = {
entry: './path/to/my/entry/file.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'my-first-webpack.bundle.js'
}
};프로젝트에서 웹팩을 사용하느냐 아니냐의 차이는 프로젝트의 복잡성에 따라 다르다. 단순한 프로젝트의 경우 웹팩과 같은 도구를 사용하는 것은 지나칠 수 있다. HTML 파일에서 스크립트 태그를 포함시키고 종속성을 수동으로 관리할 수 있다. 그러나 애플리케이션이 커지고 다양한 종속성을 가진 스크립트가 생기면 이는 관리하기 힘들어진다.
웹팩이나 비슷한 도구를 사용하지 않으면 종속성과 로드 순서를 수동으로 관리해야 하므로 번거롭고 실수하기 쉽다. 현대적인 자바스크립트, CSS 전처리기 및 기타 편의 기능을 사용하기 위해 로더의 이점을 활용할 수 없다. 또한 코드 압축과 트리 쉐이킹과 같은 최적화 기능을 사용할 수 없어 브라우저에서 스크립트의 로드 및 구문 분석 시간을 크게 줄일 수 없다.
따라서 많은 종속성이 있는 대규모 프로젝트의 경우 웹팩과 같은 모듈 번들러를 사용하면 많은 시간과 노력을 절약할 수 있으며 더욱 최적화되고 관리 가능한 코드베이스를 구축할 수 있다.
| Private NPM Registry의 필요성과 Verdaccio로 구축하는 방법 |
|---|
| Webpack 설치 방법과 기본 사용 방법 |
| Node.js에서 JSON 파일 로딩하는 방법 |
| 이미지 최적화: Node.js에서 PNG, JPG등을 WebP로 변환 및 압축 |

CloneCoding
한 줄의 코드에서 시작되는 혁신!