java icon indicating copy to clipboard operation
java copied to clipboard

Violación 1-DIP: Manager.java depende de clases concretas

Open gabygomm opened this issue 3 months ago • 0 comments

Solución propuesta:
Usar interfaces para validación y persistencia e inyectarlas.

Código propuesto:

public interface IValidator {
    boolean checkFileExist();
    String checkInputUsername();
    String checkInputPassword();
}
public interface IUserDataAccess {
    void addAccountData(String username, String password);
    String passwordByUsername(String username);
}
public class Manager {
    private IValidator validator;
    private IUserDataAccess dataAccess;
    // ...
}

UML propuesto:

classDiagram
    class Manager { -IValidator validator -IUserDataAccess dataAccess }
    class IValidator { <<interface>> }
    class IUserDataAccess { <<interface>> }
    Manager o-- IValidator
    Manager o-- IUserDataAccess

Gómez S.

gabygomm avatar Oct 24 '25 15:10 gabygomm