0. 들어가기에 앞서…

Tree Shaking: JavaScript 번들 최적화

위에 Tree Shaking 개념을 이용해 실제 모노레포 프로젝트에 적용시켜 보았다.

BundleAnalyzerPlugin를 통해 기존 프로젝트를 분석한 결과 불필요한 패키지들이 번들에 포함되는 것을 볼 수 있었다.

1. Before 사이즈 측정

패키지 번들 사이즈 측정

Untitled

패키지 전체

Untitled

공통 API

Untitled

공통 컴포넌트

Untitled

공통 Util

브라우저 번들 사이즈 측정

Untitled

공통 Hook

Untitled

번들의 세부 내용을 보면 모바일 웹에서 사용하지 않는 패키지들도 전부 가져와서 사용하는 걸 확인했다.

모노레포 패키지를 잘못 적용시킨 사례고, 지금이라도 알게 된 점을 다행스럽게 생각하며 성능 최적화를 진행했다.

2. Tree Shaking 적용