我试图代表以下现实世界的情况:
- “文件Alfred”包含以下附件:“文件Zoey”为
“附件1”和“图像1”为“附件2”
- “Document Betty”包含以下附件:“Song Rocky”为“附件A”,“Zoey文件”为“附件B”
我预计这会相当简单,但我最终弄得一团糟,甚至到了:
- “文件”类
- 类“AnnexionID”
- 反函数对象属性“identifyAnnexOf”
- 反函数对象属性“identifyAsAnnex”
- 后两个的两个反向对象属性
- 对象属性“hasAnnex”,它是传递的“hasPart”的子属性,加上其反向属性“isAnnexOf”。
这对我来说过于复杂,但是它呢?我希望这是一个典型的设计模式。什么是相关的最佳实践?