今天在寫邏輯的時候明吩,因為一個數(shù)據(jù)結(jié)構(gòu),搞得自己受不了了殷费,到最后只好忍著性子把結(jié)構(gòu)重新改了一遍印荔,這也告訴自己,寫程序千萬不能急详羡,一定要想好仍律,包括執(zhí)行邏輯,數(shù)據(jù)結(jié)構(gòu)以及思路实柠。
通過今天的痛苦經(jīng)歷水泉,自己也算是有了一個教訓(xùn)。在定義要保存的數(shù)據(jù)的結(jié)構(gòu)時窒盐,優(yōu)先考慮對象
{ id:1,name:'龍門客棧',......} 這種結(jié)構(gòu)不僅使用起來容易取草则,也方便修改。
假如我有多個組織登钥,我想在玩家進入游戲的時候畔师,將這些組織的全部信息都查詢出來,發(fā)給玩家牧牢,以便于玩家查看這些組織的信息看锉∽硕В【說明一下,最好是在進入游戲的時候講這些信息一次性的都從數(shù)據(jù)庫中查詢出來伯铣,保存到緩存中呻此,避免以后更多次的對數(shù)據(jù)庫的操作,在游戲登陸的時候占用一些時間腔寡,玩家是可以接受的焚鲜,如果在玩游戲的過程中,出現(xiàn)卡頓的情況放前,那體驗就不好了】忿磅。假如這些組織中都有很多的成員,那么數(shù)據(jù)結(jié)構(gòu)建議這樣定義:【舉例說明】
{
? ? '1' :{
? ? ? ? ? ? ?id : 1 ,//組織id
? ? ? ? ? ? ?name : '丐幫'凭语,//組織名稱
? ? ? ? ? ? ?level : 5 , //組織等級
? ? ? ? ? ? ?members : [
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?{
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? id : 201, //玩家角色id
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? name : '小李飛刀'葱她,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?.....//其他基本信息
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? } ? ? ?,.............. ? ? ? ? //其他玩家
? ? ? ? ? ? ? ?]
? ? ? },
? ? ? '2' : { //結(jié)構(gòu)同上}
}
在此只是舉例說明似扔,上面這個數(shù)據(jù)結(jié)構(gòu)時以組織的id為鍵建立起來的吨些,在取某一個組織的時候就非常的方便,修改的時候也很方便炒辉。
今天就寫到這豪墅,改天接著寫。
.....待續(xù)