Puede apretado acoplamiento también incluye la interfaz?

pleasehelpmeee:

Estoy escribiendo código para crear un juego simple, pero no estoy seguro de que esta parte está estrechamente unida o no (alta acoplamiento):

Existe una interfaz llamada GameEngine en la que controla el flujo del juego. Y hay una clase llamada GameEngineImpl que implementa la interfaz GameEngine. En otras clases como A, B, y C, que utilizan GameEngine como esto:

public class A {

    private GameEngine model;

    public  A(GameEngine model, ...) {

        this.model = model;        

    }   

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

Las otras dos clases también utilizan GameEngine de una manera similar a la clase A.

Cuando lo convirtió en diagrama UML clase, las clases, A, B, y las dependencias de C se señala hacia la interfaz GameEngine y clase GameEngineImpl se señala la interfaz GameEngine.

¿Sería esto un código fuertemente acoplado?

jaco0646:

¿Sería esto un código fuertemente acoplado?

Nº Inserción de la GameEngineinterfaz entre class Ay GameEngineImples exactamente el enfoque correcto para aliviar estrecho acoplamiento de Aa GameEngineImpl.

Lo que no quiere en su diagrama UML es las clases A, By Clas dependencias 's que apunta hacia el GameEngineImpl. Se han resuelto de manera correcta a través del uso de una interfaz. Estrecho acoplamiento no incluye la interfaz.

Asimismo, se dará cuenta en su diagrama de las flechas que señalan el uno contra el otro.

A --> GameEngine <-- GameEngineImpl

Ésto es una cosa buena. Se conoce como Inversión de Control.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=331343&siteId=1
Recomendado
Clasificación