Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
Programming

/

Front-end

フロントエンド ビルド システム 完璧ガイド - Part.1: モジュール システム

"JSビルドシステム、まだ混乱していますか?" 聞いてもピンとこなかったJSビルドシステムの概念と実践をひとつに!

실습 중심
핵심원리
JavaScript
Node.js
Webpack
vite
esm

学習した受講者のレビュー

こんなことが学べます

  • 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まで、JavaScriptモジュールシステムの発展過程を時系列にまとめます。

  • 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モジュール


    .mjs 、exportの種類、動的インポートなどの紹介


    → Parsing~Evaluation フロー Deep Dive
    →動作原理ベースのESM実習
    →モジュールグラフの可視化
    →循環参照の説明とCJSとの比較

  • UMD
    →UMDについて

    ブラウザ&Node.js両方互換
    → 汎用ライブラリの実習



🧪各モジュールシステムの動作原理を添えて直接実習しながら、抽象的な概念ではなく実戦知識を習得します


3. 開発ツール別モジュールシステムの実践実習

Webpack、Vite、Babelなどの環境で、どのような原理とプロセスでモジュールを構築するかを見てください。

  • Package.json

  • Typescript(tsc)

  • Babel


  • Webpack

  • Rollup

  • Vite

  • ESLint

🔧ツール設定を「覚える」ではなく、内部動作原理に基づいて「設計」できるようになります。

この講義を作った人


流動菌

  • (前)ラインファイナンシャルフロントエンド開発者

  • サムスンSSAFY、プログラマスなどのフロントエンド開発講義

  • Webパフォーマンス最適化講義の制作と本の出版

  • マイクロソフト393号(JSテーマ)、392号(ブロックチェーンテーマ)寄稿

Rafael

  • (現)カカオOOフロントエンド開発者


🤷‍♀ 「ライブラリを作って配布しようとしましたが、誰かとなり、誰かはできません。」
🤷‍♂ 「Webpack、Viteの設定をインターネットで見てみましたが、実はどういう意味なのかわかりません。」
🤷 「import/export、require/module.exportsが混乱しているプロジェクトをどのように整理しますか?」

9年以上フロントエンド開発とライブラリ設計、バンドル最適化をしてきて、
このような質問をチームから数え切れないほど受けてきました。

ほとんどの開発者はツールの使い方を知っていますが、なぜそのように動作するのかを深く理解せずに進むことは急速です。
そうするとエラーが発生したり、カスタムが必要な瞬間に崩れることになります。

私たちはこの苦しみを解決しようとするこの講義を作りました。

この講義は、単にモジュールを説明する講義ではありません。
実際に実務で「なぜこの設定をしなければならないのか」、「なぜこのような衝突が起きるのか」について
本当の理由と解決策を教えてくれる講義です。

ツールを自由に使いたい実務開発者にこれ以上必要な講義はないでしょう。

質問がありますか?

Q. なぜモジュールシステムを学ぶべきですか?

実務でrequireとimportを混用すると、必ず競合が発生します。

Q. 初心者も聞くことができますか?

はい、十分に聞くことができます。

この講義は「モジュールシステムという言葉が不慣れな方」も理解できるように
JavaScriptモジュールの概念自体から次第に説明します。

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

こんにちは
です。

149

受講生

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 같은 최신 도구에서 모듈 시스템이 어떻게 작동하는지도 실제 설정 파일을 뜯어보며 알려줘서, 도구에 끌려 다니던 제 자신을 성찰하고 갑니다 ㅎㅎ 남은 강의도 열심히 들으면서 무럭무럭 성장해보겠습니다. 좋은 강의 감사합니다 :)

            期間限定セール、あと5日日で終了

            ¥43,730

            24%

            ¥6,892

            似ている講座

            同じ分野の他の講座を見てみましょう!