Estava lendo sobre a lei de demétrio que fala sobre os objetos não podem se comunicar com estranhos.
ex:
class Funcionario
{
private Departamento departamento;
// getters and setters
}
class Departamento
{
private Filial filial;
// getters and setters
}
class Filial
{
private String nome;
// getters and setters
}
String nomeFilial = funconario.getDepartamento().getFilial().getNome();
Pela essa lei isso é uma má prática. Seria um método frágil.
Porque frágil ?
Seria ideal isso:
funcionario.getNomeFilial()
Agora esse padrão não tira a reusabilidade, ou seja, não criarei redundancias e a cada método adicionado na filial terei que adicionar um método no funcionario ?
Imagina se houver um nível de agregação extremamente cascateado ?
Gostaria da opinião de vcs.
