我目前正在使用Javascript + HTML5 canvas製作一個多人棋牌遊戲作爲一個小型項目。我想知道代表董事會的最佳做法是什麼。用Javascript創建一個二維棋盤遊戲對象,用於棋局遊戲
選項1:2D對象陣列 - 我有一個Piece模塊,其中有一些功能對所有的棋子都是通用的。然後我有從Piece繼承的所有作品的對象。 - 然後我可以製作一個包含32個對象的二維數組,並將它們設置在棋盤上。
選項2:2D陣列的Ints - 我可以簡單地製作一個2D網格,其中某個整數代表給定的一塊。
哪個選項是'最好的',還是有更好的選擇?我正在嘗試採取面向對象的方法。
欣賞任何輸入。多謝你們。
選項1會給你最大的靈活性 - 每個對象仍然可以包含一個整數來標識該作品,但它也可能包含諸如作品類型之類的信息,以及它是白色還是黑色: 'pieces = [{id :1,side:'white',type:'pawn'},...] 與選項2一起使用似乎只是限制自己,很少或沒有任何好處。如果目標是整體去看OO,那就去對象吧! –
就我個人而言,我會選擇二維數組的對象,這樣我就可以很容易地得到像那個位置上的棋子那樣的信息,棋子的顏色是什麼,棋子屬於哪個球員等。 –