
209
7
章
モジュールの接続
Node
のモジュールシステムは、
JavaScript
言語に昔からある「コードを独立したユニットとして整理
する機構がない」という欠陥をとても賢く補ってくれます。関数
require()
を使ってモジュールをリン
クできるのは、単純でありながら強力な仕組みです(
2
章参照)。しかし
Node
を始めたばかりの開発者
は混乱することが多いようです。実際、「コンポーネント
X
のインスタンスをモジュール
Y
に渡すのに
一番よい方法は何だ?」という質問が頻繁になされます。
混乱してしまって、
S
シ ン グ ル ト ン
ingleton
パターンを使えばモジュールをリンクさせるもっと使い慣れた方法が
見つかるのではないかと考え、むやみに突き進む人もいます。あるいは
DI
(依存性注入)パターンを過
剰に使用し、理由もなしにすべての依存関係を(ステートレスのものまで)依存性注入で取り扱うよう
にしてしまう人もいます。
Node
の話
題の中で、「モジュールの接続」の技術がもっとも意見の分かれる
ものと言っても過言ではありません。これに影響を与えているグループは数多くありますが、どの主張
も誰もが認めるものとはなっていません。どの方法にも一長一短があり、最終的にはひとつのアプリ
ケーション内に、いくつもの手法やその変形版が混在してしまっていることも多いのです。
この章では、モジュール接続のさまざまな方法を分析して強みと弱みに光を当て、それによって実
現したい単純さ、再利用可能性、拡張性の間のバランスを考慮しつつ、合理的 ...