簡體   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