1
MyService
オブジェクトをmyMethod
に挿入すると、MyService
という偽のバージョンをテスト用に注入できるようになりました。または私は何かを逃している?慣用的なJavascript依存関係グラフ
var myObject = {
myMethod: function() {
var myService = new MyService();
return myService.doSomething();
}
}
"インターフェース"によって、私はあなたが 'MyService'のプロトタイプが' Service'に設定されていると思いますか? JSで動的にメソッドを変更することができれば、私のテストで 'doSomething'を単に定義し直すことで、このアプローチのメリットは何ですか? – Ben
正確に。パフォーマンスの向上はありません。読者が契約(インタフェース)を理解し、実装内のロジックに従うだけで、プログラムをより読みやすくすることができます。 –
ご協力いただきありがとうございます。 – Ben