Pessoal,
Acabei nem sabendo como dar nome a este tópico. Mas levanto um assunto legal. Vou dar um exemplo bem simples, não quer dizer que nesse exemplo seja um bom exemplo, mas foi o primeiro que eu pensei.
Um pedido tem uma lista de itens… O domínio deve ser algo do tipo:
class Pedido {
List<Item> itens;
// ...
}
class Item {
Produto produto;
int qtd;
// ...
}
A minha dúvida é: A classe Item pode ter um ponteiro para a classe Pai?
class Item {
Pedido pedido; // pai aqui!!
Produto produto;
int qtd;
// ...
}
As vezes é muito útil, você dentro de um filho saber qual é o pai dele! Na tabela do banco de dados, você tem a Foreign Key apontando para o pai, então carregar o pai é teoricamente fácil. Só tem que tomar muito cuidado para não entrar num loop infinito, e o pai carrega o filho, o filho carrega o pai, e assim por diante…
O que vocês fazem quando estão num filho e precisam do pai? Ou nunca precisam? Vocês modelam o sistema pra sempre passar a classe pai, com o filho/lista de filhos dentro ??
[]'s
Mauricio