我正在制作一个程序来研究国际象棋的开局、陷阱和其他相关的事情。它有一个类 MoveSequence,它基本上是来自 ChessPosition 类的对象的有序列表。我还有一个 ChessOpening 类,它有一系列动作和一个名称、一个 ECO 代码(国际象棋开局分类系统)以及可能更多的东西。
我应该将 ChessOpening 实现为 MoveSequence 的子类,还是应该只包含一个 MoveSequence 对象?同样的问题也适用于 ChessTrap 类。
不要认为我在这个简单的问题中选择什么很重要。但是我想学习这些东西,所以我想知道在做出这样的决定时是否应该考虑一些原则或经验法则。