私は、依存性注入がどこにNode内にあるのか把握しようとしています。私はそれがJavaでどのように動作するかを知っていても、私はそれを周りに頭を上げているように見えることはできませんし、私は無数のブログを読んできました。多くのインポートを持つノードの依存性注入
net imoの例はです。です。 DIが必要な理由を実際には示していません。複雑な例が好きです。
私は、次のフレームワークを見てきた:今
https://github.com/young-steveo/bottlejs
、ノードは、モジュールのパターンを使用しています。私がインポートを行うと、それはノードであるのでシングルトンを受け取ります。ファクトリパターンが新しいインスタンスを返すために使用されない限り、モジュールをキャッシュします(新しいMyThing()を返します)。
依存性注入の主な機能はすべてを切り離すことです。
人がそう言うとき、私は目標が...であるという考えを得ます。すべてモジュールの上からインポートします。私は今日書く方法
:
'use strict';
// node modules
import os from 'os';
...8 more modules here
import fs from 'fs';
// npm modules
import express from 'express';
...8 more modules here
import _ from 'lodash';
// local modules
import moduleOne from './moduleOne';
...8 more modules here
import moduleTen from './moduleTen';
//...rest of my code
は30回の輸入を持つには、変更する痛みです。同じファイルを複数のファイルに保存することは、さらに大きな苦痛です。
私はhttps://blog.risingstack.com/fundamental-node-js-design-patterns/を読んでいたので、依存性注入領域を調べました。例1では、依存関係が満たされています。何について?それが良い練習になるとは思わない?
非常に多くの依存関係を持つアプリケーションをどのように構造化しますか?そしてユニットテストとモックのためにそれをフレンドリーにしますか?