Esta é basicamente uma pergunta sobre o que são entidades fracas? Quando devemos usá-los? Como eles devem ser modelados?
Qual é a principal diferença entre entidades normais e entidades fracas? Entidades fracas correspondem a objetos de valor ao executar o Design Orientado a Domínio?
Para ajudar a manter a pergunta sobre o tópico, aqui está um exemplo da Wikipedia que as pessoas podem usar para responder a essa pergunta:
Neste exemplo, OrderItem
foi modelado como uma entidade fraca, mas não consigo entender por que não pode ser modelado como uma entidade normal.
Outra pergunta é: se eu quiser rastrear o histórico de pedidos (ou seja, as alterações no status), isso seria uma entidade normal ou fraca?
OrderItem
depende deOrder
como nãoorderItems
pode existir sem pertencer a umorder
, mas não vejo por que não posso usarItemLineNumber
para identificar apenas um item ?! Na verdade, eu poderia apenas criarItemLineNumber
um auto geradoint
para garantir a exclusividade e usar uma chave estrangeiraorderID
para vincular as duas entidades ?!