8.1
RequireJS
と
AMD
によるモジュール管理
183
JavaScript
のコードをすべて読み込んでしまうのではなく、必要なときに必要なコードだけを動
的に読み込むという優れたアプローチが取り入れられています。こうすることによって、初期状態
で読み込まれるコードが減少し、初回読み込みの時間を短縮できます。
ここで例として
Gmail
の
Web
クライアントを取り上げます。ページの初回読み込み時には、
チャットモジュールなどのウィジェットは非表示です。ユーザーがメニューを開くなどの意思表示
をして初めて、依存先のモジュールが動的に読み込まれます。こうすることによって、すべての
ユーザーに対してページの初期化時にチャットモジュールの読み込みを強制せずに済むようになり
ます。その結果として、アプリケーションの読み込み時間やパフォーマンスを向上させることがで
きます。これは大規模なアプリケーションで特に効果的です。
スクリプトローダーを使って読み込みを行わなかったとしても、アプリケーションの中で
RequireJS
のようなツールを利用すると多くのメリットを得られます。
8.1.3
AMD
(
Asynchronous Module Definition
)
AMD
(
https://github.com/amdjs/amdjs-api/wiki/AMD
)はモジュール形式のコードを作成した
り依存関係を管理したりするための手法を定義しており、この仕様を実装したのが
RequireJS
で
す。
RequireJS
の
Web
サイトには、 ...