Skip to main content

Command Palette

Search for a command to run...

Bundling Fundamentals

Updated
1 min read

들어가며

프론트엔드에서 번들링을 이해하는 과정은 웹 성능 최적화를 위해서 꼭 짚고 넘어가야할 부분이다.
토스에서 작성해둔 bundling Fundamentals 과정을 통해서 번들링이 '어디서 어떻게' 일어나는지 함께 이해해보자!

번들링이란

번들링은 여러개의 웹 개발에 필요한 리소스 파일들을 하나 또는 몇 개의 파일로 묶는 작업을 얘기하고, 이렇게 묶인 파일을 번들(bundle) 이라고 부른다.

번들링의 목적

수십, 수백개의 파일을 하나로 묶어서 브라우저가 요청해야 할 파일 수를 줄이면 로딩 속도가 향상되고, 하나의 파일만 브라우저에서 캐시하면 되기에 캐싱에 최적화된다. 또한 개발할 때는 모듈화 된 파일로, 배포될 때는 번들된 파일을 사용하기 때문에 성능 최적화에 도움이 된다(당연하게도)

번들링의 과정

  1. 번들러가 서로 의존중인 파일 관계를 분석한다 (시작지점:index.js) 부터 출발해 모든 필요한 파일을 찾고, 의존성 그래프를 그린다

  2. 하나의 파일로 묶는다

  3. 추가 최적화 작업을 한다 (사용되지 않는 코드 제거, 필요한 경우 코드 스플리팅, 공백과 주석을 없애 크기를 줄인다)

  4. 최종 결과물을 배포한다. bundle.js 파일을 서버에 올려 사용자는 브라우저로 빠르게 접근한다.

More from this blog

진짜 git 아직도 모르냐!!!

들어가며 진짜 회사 입사한지 일년이 됐지만 아직까지 git을 초보자처럼 쓰고있는 내 모습에 너무 황당해서 쓰는 블로그.. 회사에서는 그냥 git clone해서 애초에 git fetch, git pull, git push, git commit, git add 등등 명령어만 남발하면서 충돌 없이 최대한 조심스럽게 익숙한 방식대로만 써왔음 에러나면 무조건 ai한테 왜이래 남발하면서 충돌해결하고 rebase, merge 차이도 잘 모르겠고,, 심지어 ...

Feb 4, 20261 min read

OpenLayers , Feature 찾는법

안녕하세요! 오늘은 개발 과정에서 겪었던 까다로운 버그와 그 해결 과정을 공유해볼까 합니다. OpenLayers를 사용한 지도 애플리케이션에서 발생한 문제로, 분명히 존재해야 할 피처(feature)를 getFeatureById로 찾지 못하는 상황이었습니다. 문제 발생: "ID도 있고, 레이어도 있는데 왜 못 찾니?" 문제는 otdr.js 파일의 highlightTracks라는 함수에서 시작되었습니다. 이 함수는 특정 트랙(track)들을 ...

Jan 28, 20263 min read

마리월드

13 posts