Pessoal,
Já tem um tempo que desenvolvo em Java mas, assumo sem vergonha, não sou nenhum mastercoder. Estive pensando sobre o hibernate e já comentei com o pessoal que trabalha comigo sobre o fato do framework usar o padrão lazyload e sobre a pratica de usar esse padrão da maneira que é usado.
vejam bem
o Hibernate usa a CGLib para “injetar” código java nas nossas classes pojo, incluindo nelas (creio eu) um observer que será chamado para carrega-las quando for necessário.
(Não sei se é isso mesmo que o hibernate faz, mas a minha dúvida faz sentido tb se fosse nos mesmos que colocassemos um observer nas propriedades a serem carregadas posteriormente)
então eu penso:
Se um pojo é usado apenas para transporte de dados e por assim dizer trafega por todas (ou quase todas) as camadas do sistema é possível que uma propriedade que retorna um pojo qualquer carregue esse objeto na camada de apresentação.
e eu, que sou meio devagar, continuo pensando:
com isso não estariamos fazendo um acesso a dados a partir da camada de apresentação e, dessa maneira, indo contra a velha história de separação de camadas
(sem contar que sempre me falaram que fazer um acesso a dados da camada de apresentação é uma tremenda gambiarra e não deve ser feito de maneira nenhuma)
Desculpe se minha dúvida for muio elementar.
Mas tem alguns aspectos que realmente são nebulosos para mim
Grato