私は教育目的で図書館を建設しています。私のライブラリにはたくさんのモジュールがあります。
私のモジュールの 1 つは、アプリケーション全体で頻繁に必要とされます。このオブジェクトを、それを必要とする他のオブジェクト内から参照できるシングルトン グローバル オブジェクトに格納するか、プロパティとしてそれを必要とするすべてのオブジェクトにフィードする方がよいでしょうか?
これには多くの独断的な答えがあるかもしれませんが、それでも私は岐路に立たされている問題です.
私は教育目的で図書館を建設しています。私のライブラリにはたくさんのモジュールがあります。
私のモジュールの 1 つは、アプリケーション全体で頻繁に必要とされます。このオブジェクトを、それを必要とする他のオブジェクト内から参照できるシングルトン グローバル オブジェクトに格納するか、プロパティとしてそれを必要とするすべてのオブジェクトにフィードする方がよいでしょうか?
これには多くの独断的な答えがあるかもしれませんが、それでも私は岐路に立たされている問題です.
2番目のオプションとして言及したのは、基本的に依存性注入のオプションです。そのため、注入されたオブジェクトをモックすることにより、コードのテスト可能性という固有の利点があります。
したがって、このモジュールが「他の」サードパーティ モジュールに外部からアクセス可能にする必要がない場合は、グローバルな汚染を可能な限り回避することもできます。独自のモジュールのすべてにそれを注入できる場合は、公開する必要はありません。
これが私の見解です。より高いレベルの設計パターンを Javascript の世界に持ち込むことは、私たちの改善につながるだけであり、依存性注入は非常に高く評価されています。