一,什麼是框架?
很多人經常說框架,但不知道框架到底是什麼,只是人云亦云,人家說,他不說,覺得丟份,所以為了裝逼,就整天把框架掛嘴邊。
框架並不是乙個具體的概念,也沒有具體的定義,他是抽象的,可以說每乙個軟體就有一種框架。
就像蓋房子一樣,我們要先畫出建築圖,然後根據建築圖來挖地基,搭建腳手架,
在這些的基礎上我們才能蓋出房子的基本骨架。
也可以把框架理解為素描,在畫乙個物體之前,我們要量出物體的尺寸,然後畫出基本輪廓。
最後在輪廓的基礎上畫出具體的細節。
那框架到底是什麼呢!?
框架是對軟體的抽象,是乙個軟體的骨幹,能夠高效,快捷的組織,使資源,**,功能模組能夠有效的整合到一起,復用起來方便,維護起來省力的**(也並不純粹是**)
(注:mvc並不是什麼框架,它是一種ui程式設計思想);
對於webgame客戶端來說,一般的框架結構包括三層;
第一層
基礎資源(進入遊戲必須要用到的資源,或一些元件的資源);
基礎模組(工具類,公共的函式,資源載入模組,點陣圖幀模組,通訊模組等);
類庫(各個模組的介面管理類,比如地圖管理類,人物管理類;基礎介面類:比如人物模型介面,人物控制類介面,ui介面等;基礎資料類:比如儲存全域性變數的類,儲存個人資訊的全域性類等;一些事件等;
第二層主程式模組(用來載入一些必須的資源和初始化要用到的所有模組的管理介面和初始化一些必要的資料,使他們能夠在需要的時候可以互相呼叫)
第三層子程式模組(地圖模組,對戰模組,ui模組,任務模組等。這些模組必須繼承或實現第一層中模組管理類中規定的介面或抽象類);
示意圖:(畫的有點糙,請勿見怪)
二在專案當中具體如何寫框架?
在具體專案中**庫,模組,類,資源的分包和組織方式也屬於框架的範疇。
好的組織分包能讓我們的框架更清晰,更容易維護,更容易擴充套件
比如下面的框架結構:
這個架構採用dll載入(執行時載入)可以加快玩家進入遊戲的速度
clientcore放的是一些核心庫
jackycomponent裡面放的是我平時開發的一些元件
jackylibrary放的是我自己寫的一些工具類以及引擎
mainentery是遊戲的主入口,裡面的初始化遊戲整個結構,包括需要的資源以及各個模組和系統的face還有一些公用的資料類等等。
反正思想就是這樣了,具體的**我就不貼了,還得靠自己慢慢的去體會琢磨。
具體模組怎麼寫我在後面會寫到的。
今天先寫到這裡吧,明天繼續!
擎天哥qq 296963166 歡迎加我討論(加我註明 擎天哥);
python 學習系列教程一建立第乙個工程
python 現在用的越來越多了,在樹莓派中都能直接進行開發了,都說python 是最簡單的一門程式語言,確實python 確實一看就能看明白,但是真的到自己寫的時候,就變成一臉懵逼了,python 容易理解,但是想真真實實的學好這門語言,還真是不太容易,博主在這塊學習的也不算深入,只能說是半瓶子醋...
WCF教程系列 1 建立第乙個WCF程式
wcf教程系列 1 建立第乙個wcf程式 using system.servicemodel namespace host 而hellowcfservice.cs 實現如下 using system 縮短為baseaddress http localhost 8731 hellowcfservice...
易輔客棧第一套從零學輔助系列教程
易輔客棧第一套從零學輔助系列教程 找圖找色識字找字鍵鼠操作前台後台目錄檔案操作常用系統命令 剪下板或者系統目錄執行應用等等 彙編記憶體從那個目錄看基本就這些 小知識 如何把大漠dll變成易語言的乙個支援庫來更加方便的呼叫 但是把大漠dll變成易語言支援庫的方式來使用大漠無法靜態編譯 工具 型別庫或o...