2011-04-08 55 views
0

我正在使用後端的RoR 3 Web服務構建iPhone應用程序。該應用程序是一個相當簡單的點對點遊戲。如果有人能夠分享一些關於如何在Web服務和本地iPhone之間最佳劃分操作的指針和提示,我將非常感激。帶有RoR 3 Web服務的iPhone應用程序

例如,國際象棋或西洋雙陸棋,是不斷保存和從服務器檢索遊戲的當前狀態?或者它本地存儲在玩家的iPhone上?

謝謝!

回答

0

這取決於您希望如何對應用程序進行編程以及您的需求是什麼,這將會有很大的差異。您可以不斷地從服務器保存和檢索遊戲狀態,您可以按照由遊戲操作確定的特定時間間隔同步遊戲狀態,或者您可以主要運行本地遊戲狀態。這完全取決於你的要求。一般來說,細胞網絡應被認爲是緩慢且不可靠的(儘管這並非總是如此)。將數據傳輸保持在實現目標所需的最低水平,使您的應用感覺更加快速響應,用戶更加快樂(尤其是那些覆蓋範圍較差的用戶以及那些沒有無限數據計劃的用戶)。

0

這取決於它是針對其他玩家的遊戲還是針對電腦對手。如果它是針對另一個玩家,那麼該狀態將被更新並從服務器中檢索。如果它違背了內置的AI,那麼沒有理由將該狀態發送到服務器,除非您的AI在您的web服務中,而不是將其包含在實際應用程序中。這是一個基於你想要完成的設計決定。一般來說,我會建議儘可能保持應用程序的本地位置,除非有理由在服務器上執行此操作,但如果您的遊戲有任何競爭方面的問題,則一定要控制服務器上的任何計算。請記住,有人總是可以嘗試反編譯你的應用程序,或者直接調用你的web服務傳遞錯誤的數據。