我正在使用 xcode 和核心数据创建数据模型。这是一个对象图,而不是实体关系模型,所以我有继承和多对多关系。
这是我的问题:我有一个名为 Category 的类或实体。某些类别由应用程序创建,用户无法删除或修改。用户可以创建自己的类别。
经过思考,我找到了 4 种方法来对此进行建模。看图片:
我想最实用的解决方案只是添加一个标志 isSystemCategory,但我想知道从建模的角度来看最好的解决方案是什么。我猜是第一个。一个叫做Category的抽象类,以及2个后代,可编辑和可删除的UserCategory和不可变的SystemCategory,用户不能删除或修改。请注意,后代不会添加任何属性、关系或任何更改,所以,这就是我提出问题的原因。这对建模者来说是正确的方法吗?
我想知道你的想法。谢谢。