강의

멘토링

로드맵

개발 · 프로그래밍

/

프론트엔드

프론트엔드 빌드 시스템 완벽 가이드 - Part.1: 모듈 시스템

"JS 빌드 시스템, 아직도 헷갈리세요?" 들어도 와닿지 않았던 JS 빌드 시스템의 개념과 실습을 하나로!

(5.0) 수강평 14개

수강생 175명

  • Rafael
  • 유동균
실습 중심
핵심원리
JavaScriptNode.jsWebpackviteesm

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • JS 모듈 시스템의 발전 과정과 CJS, AMD, ESM, UMD 깊이 있는 동작 원리

  • require, import, define 헷갈렸던 모든 문법을 시나리오 별 실습으로 정리

  • Vite, SWC, TypeScript, Webpack 등 최신 도구에서의 모듈 시스템 완전 분석

  • 순환참조, 조건부 로딩, 비동기 모듈까지, 실제로 부딪히는 문제 해결 노하우

🛠 툴에 휘둘리지 않는 프론트엔드 개발자를 위한 모듈 시스템!

JS 모듈 시스템을 이해하고나면, Webpack, Vite 는 더 이상 두려움의 대상이 아닙니다!

  • 실무에서 번들러, 패키지 매니저, 트랜스파일러를 100% 활용하기 위해선 모듈 시스템의 원리를 정확히 이해하고 있어야 합니다.


  • 어떤 새로운 툴이 나와도 모듈 시스템 개념이 확실하다면 누구보다 빠르게 도구를 활용할 수 있습니다.


  • 라이브러리를 직접 만들거나 배포하는 경우에도, CJS, ESM, UMD 빌드 전략을 알아야 오류 없는 라이브러리를 제공할 수 있습니다.

🙋‍♀ 이런 분들께 추천해요!

프론트엔드 개발 환경을 기초 부터 실전까지 완벽히 이해하고, 자신이 원하는대로 환경을 구성하고 싶은 개발자

CJS, ESM, AMD, UMD 가 뭔지 아직도 이해 못하는 주니어 개발자

Webpack, Vite, Rollup, Babel 등 빌드 도구의 핵심 개념을 이해하고 실무에서 100% 활용하고 싶은 개발자


🚀 수강 후에는

  • ES Module, CommonJS, AMD 등 각 방식의 차이를 확실히 이해하고, 언제 어디서든 적절히 선택·응용할 수 있게 됩니다.

  • Vite, Rollup, Webpack, Babel 등 주요 툴의 모듈 시스템 연동 원리를 꿰뚫어 보고, 복잡한 설정도 두려움 없이 커스터마이징할 수 있습니다.

  • JS 빌드 시스템을 이해하고 배포 파이프라인에서 발생하는 모듈 오류를 신속히 진단·해결할 수 있습니다.


  • 모듈 시스템과 툴 체인의 종합적 이해로, 팀의 아키텍처 결정에 주도적으로 참여할 수 있습니다.


👨‍🏫 이런 내용을 배워요

1. JS 모듈시스템의 발전을 한 강의로

CJS부터 ESM까지, 자바스크립트 모듈 시스템의 발전과정을 시간 순으로 정리합니다.

  • AMD는 왜 CJS와 분리됐을까?

  • Node.js가 CommonJS를 채택한 이유

  • UMD가 해결하려고 했던 문제

  • Webpack, Babel 의 등장 이유



2. 각 모듈 시스템의 동작 원리와 실습

require, define, import 가 실제로 어떤 구조로 동작하는지 직접 눈으로 확인하고 실습해봅니다.

  • CommonJS
    → 모듈 스펙, 패키지 스펙 소개


    → CJS 동작 원리 Deep Dive
    → Resolution~Caching 전 과정 설명
    → 동작원리 기반 CJS 실습 (순환참조 등)
    → CJS로 만들어진 패키지 분석

  • AMD


    define 함수, 비동기 모듈 로딩 흐름
    → RequireJS를 활용한 AMD 실습

  • ES Module


    .mjs, export 종류, 동적 import 등 소개


    → Parsing~Evaluation 흐름 Deep Dive
    → 동작원리 기반 ESM 실습
    → 모듈 그래프 시각화
    → 순환참조 설명 및 CJS와 비교

  • UMD
    → UMD 소개

    브라우저 & Node.js 양쪽 호환
    → 범용 라이브러리 실습



🧪 각 모듈 시스템의 동작 원리를 곁들이며 직접 실습하면서, 추상적인 개념이 아닌 실전 지식을 습득합니다.


3. 개발 도구 별 모듈 시스템 실전 실습

Webpack, Vite, Babel 등의 환경에서 어떤 원리와 과정으로 모듈을 빌드하는지 살펴봅니다.

  • Package.json

  • Typescript (tsc)

  • Babel


  • Webpack

  • Rollup

  • Vite

  • ESLint

🔧 툴 설정을 “외우는” 것이 아닌, 내부 동작 원리를 기반으로 “설계”할 수 있게 됩니다.

이 강의를 만든 사람


유동균

  • (전) 라인 파이낸셜 프론트엔드 개발자

  • 삼성 SSAFY, 프로그래머스 등 프런트엔드 개발 강의

  • 웹 성능 최적화 강의 제작 및 책 출판

  • 마이크로소프트웨어 393호(JS 주제), 392호(블록체인 주제) 기고

Rafael

  • (현) 카카오OO 프론트엔드 개발자


🤷‍♀ "라이브러리를 만들어 배포하려 했는데, 누군가는 되고 누군가는 안 됩니다."
🤷‍♂ "Webpack, Vite 설정을 인터넷 보고 하긴 했는데, 사실 무슨 의미인지 모르겠어요."
🤷 "import/export, require/module.exports가 뒤엉켜 있는 프로젝트를 어떻게 정리하죠?"

9년 넘게 프론트엔드 개발과 라이브러리 설계, 번들러 최적화를 해오면서,
이런 질문을 팀에서 수도 없이 받아왔습니다.

대부분의 개발자들은 툴 사용법은 알지만, 왜 그렇게 동작하는지는 깊게 이해하지 않고 넘어가기 급급합니다.
그러다 에러가 발생하거나 커스텀이 필요한 순간 무너지게 되죠.

저희는 이런 답답함을 해결해보고자 이 강의를 만들었습니다.

이 강의는 단순히 모듈을 설명하는 강의가 아닙니다.
실제로 실무에서 "왜 이 설정을 해야 하고", "왜 이런 충돌이 일어나는가"에 대한
진짜 이유와 해결법을 알려주는 강의입니다.

툴을 자유롭게 쓰고 싶은 실무 개발자에게 이보다 더 필요한 강의는 없을 겁니다.

궁금한 점이 있나요?

Q. 모듈 시스템을 왜 배워야 하나요?

실무에서 require와 import를 혼용하면 반드시 충돌이 발생합니다. 각 모듈 시스템의 동작 원리를 이해해야 에러 없이 프로젝트를 구성할 수 있습니다.

Q. 초보자도 들을 수 있나요?

네, 충분히 들을 수 있습니다.

이 강의는 “모듈 시스템이라는 단어가 생소한 분”도 이해할 수 있도록
자바스크립트 모듈의 개념 자체부터 차근히 설명합니다.

import, export, require 같은 문법을 한 번이라도 써보신 분이라면 OK
번들러(Webpack, Vite)를 써봤지만 왜 그렇게 설정하는지는 모르겠는 분이라면 더 좋습니다

오히려 모듈 시스템 개념을 처음 접하는 분일수록 “왜 이걸 써야 하는지” 명확하게 이해하실 수
있습니다

강의 중 개념이 나올 때마다 시각화된 흐름도, 예제 코드, 실습으로 반복 설명해드립니다.

Q. 어떤 실습을 하나요?

2장에선 각 모듈 시스템을 배울 땐 직접 모듈을 만들어보고 실무와 비슷한 환경에서의 실습을 통해 오류를 같이 해결해 나갑니다.

3장에선 여러 프론트엔드 개발환경 도구 툴들에서 모듈 시스템을 직접 구현해가며 마주할 수 있는 이슈를 해결해나갑니다.

수강 전 참고 사항

실습 가능 환경

  • 운영 체제 및 버전(OS): Windows, macOS

  • 사용 도구: 코드 에디터 (VS Code, cursor, Webstorm 등 무관)

    • 강의에선 VS Code로 설명

학습 자료

  • 강의 시 PPT로 진행되는 부분은 PDF로 제공됩니다.

  • 실습 예제는 github 으로 제공됩니다.

이 강의는 시리즈 강의의 첫 번째 강의입니다.

  • 시리즈 강의로 패키지 매니저, 번들러, 트랜스파일러 강의가 이어서 출시될 예정입니다!


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 프론트엔드 개발 환경을 이해하고 고수가 되고 싶으신 분

  • CJS, AMD, UMD, ESM 말로만 들었지, 제대로 이해하지 못하는 주니어 개발자

  • 빌드 도구가 어떻게 동작하는지 원리부터 실전까지 이해하고 싶으신 분

  • Webpack과 Babel 등 빌드 툴과 씨름하느라 시간을 많이 낭비하신 분

  • module not found, circular dependency 에러에 시달려본 분

선수 지식,
필요할까요?

  • JavaScript

안녕하세요
입니다.

175

수강생

14

수강평

1

답변

5.0

강의 평점

1

강의

(전) 롯데쇼핑 e커머스사업본부

(전) 버즈니

(현) 카카오모빌리티

커리큘럼

전체

43개 ∙ (5시간 12분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

14개

5.0

14개의 수강평

  • 서정우님의 프로필 이미지
    서정우

    수강평 5

    평균 평점 5.0

    5

    98% 수강 후 작성

    번들러는 webpack, vite 정도의 얕은 깊이로만 알고 있었는데 강의 듣고 원리를 이해할 수 있게 되었습니다. 감사합니다

    • 유동균님의 프로필 이미지
      유동균

      수강평 1

      평균 평점 5.0

      5

      17% 수강 후 작성

      • Seo Tr님의 프로필 이미지
        Seo Tr

        수강평 1

        평균 평점 5.0

        수정됨

        5

        91% 수강 후 작성

        프론트엔드 개발에서 놓치기 쉬운 부분들을 명확하고 쉽게 설명을 해주시네요. 모듈시스템을 대충대충 알고 넘어가기 쉬운데 개념부터 자세히 나와있어서 해당부분에서 애매하게 알고있다면 강추입니다. 아는것과 모르는것은 큰 차이가 있는데 시간내서 미리 공부할걸 싶었네요

        • Rafael님의 프로필 이미지
          Rafael

          수강평 1

          평균 평점 5.0

          5

          12% 수강 후 작성

          • chaeyeon님의 프로필 이미지
            chaeyeon

            수강평 1

            평균 평점 5.0

            5

            35% 수강 후 작성

            프론트엔드 개발하면서 늘 헷갈렸던 JS 모듈 시스템… 강의를 들으면서 정리되고 있는 거 같아요. CommonJS, AMD, ESM, UMD 개념은 물론, 왜 그런 구조가 생겨났는지 역사적인 맥락까지 설명해주셔서 머리에 체계가 잡혀가고 있는 중입니다. 특히 Webpack, Vite 같은 최신 도구에서 모듈 시스템이 어떻게 작동하는지도 실제 설정 파일을 뜯어보며 알려줘서, 도구에 끌려 다니던 제 자신을 성찰하고 갑니다 ㅎㅎ 남은 강의도 열심히 들으면서 무럭무럭 성장해보겠습니다. 좋은 강의 감사합니다 :)

            2025 추석맞이 감사할인 중 (8일 남음)

            ₩43,720

            25%

            ₩58,300

            비슷한 강의

            같은 분야의 다른 강의를 만나보세요!