Olá,
Porque você precisa colocar regras dentro do construtor?
Você está preocupada em manter o estado do objeto? é isso?
Você consegue manter o estado do seu objeto sem precisar do construtor, crie métodos para tais validações.
Acho mais O.O. essa abordagem.
Com relação à maquina boa, depende muito.
Primeiro, seu sistema pode até ser pequeno, como vc mesmo disse, mas a quantidade de acessos pode ser grande e aí cai por terra o fato de achar que ser pequeno não demanda processamento.
Não caia na besteira de pensar prematuramente em processamento, memoria etc.
É obvio que o minimo você terá que ter, mas primeiro faça o sistema, bote no ar e veja o que acontece e aí com o tempo você pensa em máquina.
Abraços.
Fabio Nascimento.
Em tempo >
6. Quanto a validação dos atributos de uma instância. O livro Hibernate in Action, só para citar
um exemplo, recomenda que exista um método de negócio ou construtor que recebe todas os atributos
do POJO e desta forma realiza as validações e regras de negócio envolvidas durante o processo de
construção. Neste cenário, como fica a validação na alteração dos atributos, já que os métodos
set, neste caso, são privados;
Phillip > Novamente é uma questão de invariante. Um construtor deve garantir a invariante do objeto e os métodos também, além de suas pré e pós condições. Dê uma olhada na bibliografia que te passei.
Texto retirado daqui > http://fragmental.com.br/wiki/index.php?title=Desenvolvendo_Sistemas_OO_Com_Padrões_de_Negócio