2

単純なゲームを作成するコードを書いていますが、この部分が密結合 (高結合) であるかどうかはわかりません。

ゲームの流れを制御する GameEngine と呼ばれるインターフェースがあります。また、GameEngine インターフェイスを実装する GameEngineImpl というクラスがあります。A、B、C などの他のクラスでは、GameEngine を次のように使用します。

public class A {

    private GameEngine model;

    public  A(GameEngine model, ...) {

        this.model = model;        

    }   

    public void draw() {
        model.tick();
    }
}

他の 2 つのクラスも、クラス A と同様に GameEngine を使用します。

UML クラス図に変換すると、クラス A、B、C の依存関係は GameEngine インターフェイスを指し、GameEngineImpl クラスは GameEngine インターフェイスを指していました。

これは密結合コードでしょうか?

4

1 に答える 1