[英]Is this correct modelling approach? Class diagram example
我正在尝试为国际象棋游戏建模。 我的UML新手想法如下:
GameEngine只有一个棋盘和两个玩家(从Player继承),而当GameEngine被销毁时,这些(组成)也是如此。 棋盘最多可包含32个棋手,每个玩家可以控制/拥有16个棋手的参考(集合)。 玩家需要调用或访问棋盘的某些方法(定向关联)。 那是正确的还是至少接近的?
您已使Human
和CPU
成为了抽象Player
。 我认为您所有的箭头都必须使用普通的Player
。 例如:
class Chessboard {
Player p1;
Player p2;
}
这是更方便的方式,您可以在运行时更改玩家和不同的游戏模式:“人与人”,“人与CPU”,甚至“ CPU与CPU”
相同的更改应用于GameEngine。
顺便说一句,我认为由玩家控制的棋手不是一个好主意。 对Chessman
螺母的所有控制权Chessman
Chessboard
负责,玩家在想转牌时只是向他发送消息。
这项更改使您可以为多人游戏每个玩家拥有几个棋盘。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.