Это в основном вопрос о том, что такое слабые сущности? Когда мы должны их использовать? Как они должны быть смоделированы?
В чем основное различие между нормальными и слабыми объектами? Соответствуют ли слабые объекты объектам-значениям при проектировании на основе домена?
Чтобы помочь сохранить вопрос по теме, вот пример из Википедии, который люди могут использовать для ответа на этот вопрос:
В этом примере OrderItem
была смоделирована как слабая сущность, но я не могу понять, почему она не может быть смоделирована как нормальная сущность.
Другой вопрос: что если я хочу отслеживать историю заказов (т.е. изменения в ее статусе), это будет нормальная или слабая сущность?
OrderItem
зависит от того,Order
как неorderItems
может существовать, не принадлежа кorder
, но я не понимаю, почему я не могу использоватьItemLineNumber
только для идентификации элемента ?! На самом деле, я мог бы простоItemLineNumber
сгенерировать автоматическиint
для обеспечения уникальности и использовать внешний ключ,orderID
чтобы связать две сущности вместе ?!