問題タブ [dependency-inversion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oop - 依存関係逆転の原則とは何ですか? なぜ重要なのですか?
依存関係逆転の原則とは何ですか? なぜ重要なのですか?
oop - 「依存関係の逆転」と「インターフェイスへの設計」は同じ原則ですか?
「依存性逆転の原則」(DIP) と「インターフェースへの設計の原則」は同じ原則を表していますか? そうでない場合、違いは何ですか?
編集
コンテキストを明確にし、少し絞り込むために: インターフェイスとは、Javainterface
や C++ の純粋な抽象基本クラスのようなプログラム インターフェイスを意味します。他の「契約」は関係ありません。
oop - OOPで「依存関係逆転の原則」とはどういう意味ですか?
オブジェクト指向プログラミングにおける「依存関係逆転の原則」とはどういう意味ですか? それは何をするためのものか?
module - 「高レベル モジュール」と「低レベル モジュール」とは何ですか (依存関係逆転の原則のコンテキストで)?
ウィキペディアの 依存性逆転の原則 の定義を読んでいましたが、高レベル モジュールと低レベル モジュールという 2 つの用語が使用されていますが、理解できませんでした。
それらは何であり、依存性逆転の原則はそれらと何の関係がありますか?
c# - SOLIDの依存性逆転原理にある「詳細」という言葉をどのように定義すればよいでしょうか。
ウィキペディアから:
原則は次のように述べています。
A わかります。
しかし、(B)の「 Details 」の定義を書くのに問題があります。
DEFINITIONという用語をどのように定義できますか? それは正確には何を表していますか?
ありがとう!
php - PHPの依存性逆転の原則
PHPは緩く型付けされた言語なので、DIPの原則をPHPにどのように適用できますか?
実用的な例をいただければ幸いです。
javascript - JavaScriptの依存性逆転の原則
JavaScript jQueryで依存性逆転の原則を説明するのを手伝ってくれる人はいますか?
これらの2つのポイントを強調して説明します。
A.高レベルのモジュールは低レベルのモジュールに依存するべきではありません。どちらも抽象化に依存する必要があります。
B.抽象化は詳細に依存するべきではありません。詳細は抽象化に依存する必要があります。
抽象化または高/低レベルモジュールとは何ですか?
これは私の理解に本当に役立ちます、ありがとう!
oop - 依存性注入の手法を使用して、依存性逆転の原則を達成しますか?
依存性注入の手法を使用して、依存性逆転の原則を達成しますか?
私は正しいですか?
java - OSGiコンポーネントのユニットテスト
私は現在、「jUnitやMockitoなどのフレームワークを使用してOSGiコンポーネントのテストを簡単に作成できるようにOSGiコンポーネントを設計する方法」を考えています。
OSGiはDIP (依存性逆転の原則)を強化し、インジェクター方式(セッターなど)が通常存在するため、バンドル間の依存関係をあざけるのは非常に簡単です。
しかし、バンドルの内部依存関係はどうですか?
たとえば、この場合を見てください。今度はそれをOSGiコンテキストに持ち込みたい...OSGiプラットフォームで宣言型サービスとしてあらゆる種類のネットワークプロトコルを提供し、直接相互作用している下位のネットワークコードをテストするための単体テストを記述したいイメージソケットオブジェクト。
ソケットの作成を別の、しかしバンドルされた内部POJO (Plain Old Java Object)クラスにリファクタリングする場合、プロトコル実装にどのように注入する必要がありますか?
- 単体テストでは、単純にセッターメソッドを使用できますが、OSGiコンテナーでこれを行うのは誰ですか?
- テストされたクラスをサブクラス化し、creator-methodを上書きすることは、テストされたクラスがfinalとして宣言されていない場合にのみ機能します。
oop - 「オープン/クローズの原則」と「依存性逆転の原則」の違いは何ですか?
SOLID に関する記事を読みましたが、OCP と DIP の違いはわかりません。この OCP の例を見てください。
OCP を保持するコードは、DIP も満たします。DIPではなくOCPを保持するコードの例を誰か教えてもらえますか?