繁体   English   中英

Java棋盘游戏实时服务器,我应该使用不变性吗?

[英]Java board game real-time server, should I use immutability or not?

我一直在思考如何协调对实时通知玩家的棋盘游戏服务器的这两个要求:

  • 我想将事件发送给玩家(棋盘游戏中的一个动作可能会产生多种后果,我想为发生的事情设置动画,而无需在客户端上重新实现所有逻辑)。
  • 我想公开游戏的状态(当玩家重新加载游戏时,我需要发送游戏的当前状态,而不重播所有事件)。

第一个要求告诉我“制作一个可变的可观察对象”。 第二个要求告诉我“创建一个不变的对象”以安全地暴露状态。

您将选择哪种模型来实施规则? 可变还是不可变?

重玩游戏,寓意单一步骤,计算机算法(撤消,尝试),将倾向于不可变的对象。

然后,您想将当前快照发送给新输入的用户,这是一个次要问题:保留当前快照,整个图片。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM