Javaでの疎結合について知っておくべきことすべて



この記事では、Javaで疎結合を実装する方法の詳細で包括的な知識を例とともに提供します。

ある要素が別の要素によって直接使用される度合いは、 カップリング オブジェクト指向設計で。この記事では、疎結合について理解します。 次の順序で:

Javaでのカップリングの種類

カップリングには2つのタイプがあります。





  • 密結合 :オブジェクトが使用するオブジェクトを作成すると、それが呼び出されます 密結合
  • 疎結合 :オブジェクトが外部ソースから使用されるオブジェクトを取得するとき、それを呼び出します 疎結合

この記事では、Javaの疎結合を調べ、その実装方法を確認します。

Javaの疎結合とは何ですか?

オブジェクトが外部ソースから使用されるオブジェクトを取得するとき、それを呼び出します 疎結合



言い換えると、疎結合とは、オブジェクトが独立していることを意味します。疎結合コードは減少します メンテナンスと努力。 これは、疎結合コードによって削除された密結合コードの欠点でした。

Javaでディープコピーを作成する方法

Javaでの疎結合

2つのクラスAとBがあると想像してください。クラスAには、インターフェイスを介して公開されたクラスBに関する情報がほとんどありません。その場合、クラスAとBは次のようになります。 疎結合



疎結合のコード:

import java.io.IOException interface Animal {public void display()} class Dog {Animal s public Dog(Animal s){this.s = s} public void display(){System.out.println( 'Dog')s .display()}}クラスCatはAnimalを実装します{public Cat(){} public void display(){System.out.println( 'Cat')}}クラスCowはAnimalを実装します{public Cow(){} public void display( ){System.out.println( 'Cow')}} public class Test {public static void main(String args [])throws IOException {Animal b = new Cat()Animal c = new Cow()Dog a = new Dog (b)// a.display()は犬と猫を出力しますa.display()Dog a1 = new Dog(c)// a.display()は犬と牛を出力しますa1.display()}}

出力:

説明:

上記のコードの3つのクラスはすべて疎結合です。これは、動物のインターフェースを使用して実装されたクラスのいずれかを注入することにより、benユーザーにサービスを提供します。

密結合と疎結合の違い

  • 疎結合は、密結合よりもテスト能力が優れています。

  • 疎結合は、プログラムのGOF原則に従ってインターフェースし、実装しませんが、密結合はインターフェースの概念を提供しません。

    トークンJavaとは
  • 疎結合では2つのクラス間でコード/オブジェクトを交換するのは簡単ですが、密結合ではそれほど簡単ではありません

  • 疎結合は非常に変更可能ですが、密結合は変更できません。

結論として、 密結合は、コードの柔軟性と再利用性を低下させるため、疎結合に比べてはるかに悪く、密結合では変更を加えることも非常に困難です。密結合のすべての欠点と疎結合で取り除かれます。

これで、このJavaでの疎結合の記事は終わりです。カップリングがどのように機能し、疎結合とは何かについて理解していただければ幸いです。

チェックしてください 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 EdurekaのJavaJ2EEおよびSOAトレーニングおよび認定コースは、Java開発者になりたい学生および専門家向けに設計されています。このコースは、Javaプログラミングをすぐに開始できるように設計されており、HibernateやSpringなどのさまざまなJavaフレームワークに加えて、コアと高度なJavaの両方の概念についてトレーニングします。

質問がありますか?この「Javaでの疎結合」ブログのコメントセクションでそれについて言及してください。できるだけ早くご連絡いたします。