5 - Coesão

Vejamos o exemplo de classe a seguir:

class cliente{
    private nome;
    private telefone;
    private endereço;
    public cliente(String nome){
...
}
    public void setTelefone(String telefone){
...
}
public String getTelefone(){
...
}
public setEndereco(String telefone){
...
}
public String getEndereco(){
...
}
Public void imprimeCliente(){
limpaTela();
…

}
public void limpaTela(){
...
}
}

Podemos verificar que a classe tem um método chamado limpaTela(), que não tem relação com a proposta da classe cliente que é a representação de um cliente. O processamento de tela não deveria estar na classe, pois ela pode ser dependente do dispositivo. Então, caso quiséssemos alterar o dispositivo de apresentação, teríamos que alterar esse método que está dentro da classe cliente. Imagina quanto tempo perderíamos procurando na aplicação todos os métodos de impressão para fazer essa alteração.

Copyright © 2014 AIEC.