通常,所有的玩家的操作都會經過玩家進程去處理。那麼當玩家的操作很多的時候 該怎麼去設計劃分呢?(比如你有任務模塊、充值模塊、不同玩法模塊的時候)。 在以前的項目中,大家是這麼做的,以數字編碼模塊, 比如 handle(1xxxxx) 處理登錄 handle(2XXXX)處理任務等等。 然後1xxxx ...
通常,所有的玩家的操作都會經過玩家進程去處理。那麼當玩家的操作很多的時候
該怎麼去設計劃分呢?(比如你有任務模塊、充值模塊、不同玩法模塊的時候)。
在以前的項目中,大家是這麼做的,以數字編碼模塊,
比如 handle(1xxxxx) 處理登錄 handle(2XXXX)處理任務等等。
然後1xxxx 一個文件, 2xxxx 另一個文件。
調用就經過一張路由表去做。
不是說這種方式不好,而是覺得這種方式偷懶省去了api。
另外這種方式通常把socket交由玩家進程去處理了, 流的編解碼也放到玩家進程去了,導致代碼不清晰,
繼而也就不好測試。
====================================================
我以前會用exactor 去簡化api和處理代碼,會用點元編程去引進另外文件的處理代碼。
但現在覺得沒必要,因為自己用少量的代碼也可以做到想要的效果,還更清晰。
提交的只是分離PlayerServer的調用到不同文件的演示。
具體看代碼吧,也許有更好的做法,而我不知道。
============================================
剛剛忘記去掉use 用法了,因為用了apply 後就不需要了,
再導入處理模塊了。用了反而會造成衝突。