Vejo com uma certa frequencia a utilização de regras de negócio dentro da Entidade principal, normalmente dentro das arquiteturas utilizando DDD. Mas não sei ao certo, por que o correto pode variar de tipos de arquitetura, mas de certa forma o "correto" não deveria ser isolar as regra de negócio e os métodos de modificação da entidade dentro de uma classe de serviço ?
Exemplo prático:
//Metodo que costumo ver
Class Aluno {
String nome;
String Idade;
List<Telefone> telefone;
void addtelefone(Telefone tel){
//regra de negocio limita numero de telefones
//codigo incrementar lista
}
}
//Metodo que imagino ser o ideal
Class AlunoService{
void addTelefone(){
//regra de negocio
// salvar telefone no banco vinculado ao usuario
}
}