트리 쉐이킹 단어를 아는지가 아니라, 어떤 전제(ESM·sideEffects·코드 구조)에서 효과가 나는지와 효과를 어떻게 측정하는지를 같이 보는지 가르려는 질문이다.
트리 쉐이킹은 번들러가 모듈 의존 그래프를 정적으로 따라가며 어디서도 참조되지 않는 export를 결과 번들에서 제거하는 최적화다. ES 모듈은 import/export 구조가 정적이라 분석이 정확한 반면, 동적 require가 섞인 CommonJS·런타임 분기 코드는 보수적으로 남겨 두기 쉽다. 또 모듈에 사이드 이펙트가 있는지 번들러가 모르면 안전하게 그대로 두기 때문에, package.json의 sideEffects 표기와 re-export 패턴이 결과를 크게 가른다. 결국 효과 확인은 번들 분석 도구로 모듈 단위 크기 변화를 직접 확인하는 단계까지 가야 한다.
번들 분석 결과로 큰 비중을 차지하던 모듈을 정리해 본 경험이 있다면 측정 기반 최적화 사례로 연결할 수 있다
CommonJS 의존성을 ESM 대체로 옮기며 번들 크기 변화를 본 적이 있다면 전제 조건의 영향력으로 엮을 수 있다
공통 라이브러리에 sideEffects 정책을 정리해 본 경험이 있다면 라이브러리 작성자 관점에서 말할 수 있다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.