JavaScript Module에 대한 공부를 하다.
MDN: JavaScript modules와 ES modules: A cartoon deep-dive by Lin Clark 를 읽고 부족했던 JavaScript module과 Native ES Module에 대한 이해를 절충했다.
지금까지 JS, React, React Native관련 패키지를 만들 때 react-native-builder-bob
이나 tsc
같은 고차원의 번들러에 의존해 어떤 방식으로 모듈이 구성되고 사용은 어떻게 되는건지에 대한 이해가 빈약하다고 느꼈는데, 좀 더 CJS와 ESM의 차이를 이해하고 ES Module의 시대가 왜 도래했고 모든 브라우저가 지원하기에까지 이르렀는지 확인해보았다.
이는 Vite의 문서를 보다가 공부를 시작한 것인데, Vite가 생긴 이유가 Babel같은 번들러를 더 이상 쓰지 않고 빠른 번들링 및 HMR를 구현하기 위해 Native ES Module로 변환하는 것이 Vite의 철학이라는 것을 보고 흥미가 생겼기 때문이다.
Comments