天天看點

unity3D 遊戲開發之工程代碼架構設計思路MVC

設計目的

1.使工程結構更規範。

2.提高代碼可讀性,封裝性,拓展性 

3.提高工作效率。

正文内容: 

1.Frame的組成結

(1)視圖層(View)

(2) 控制層(Control)  

(3)資料層(Model)

整個Frame是由這三個部分組成,每一層管理屬于自己的邏輯,核心思想是遊戲邏輯和UI

邏輯獨立開。目前遇到的項目工程大多數View和Control邏輯都寫在一起,這樣後期修改

和維護效率會很低,因為耦合性很高而View又是經常要修改的地方,是以造成Control方

面的邏輯也不得不修改。

2.視圖層(View)

說明:視圖層為展現給玩家的邏輯層(包括UI的表現和場景内的表現),它位于整個架構

邏輯的最頂層。

注意:View層中的任何邏輯都不可直接對Model層中的資料進行修改,可以看作它對

Model層擁有隻讀權限。

功能:

(1)負責管理自己所屬面闆(或場景)的邏輯。

(2)負責資料在視圖層的重新整理。

(3)實作使用者界面按鈕的操作邏輯。

3.控制層(Control) 

說明:整個Frame中唯一一個對Model層擁有讀寫權限的邏輯層。 

注意:Control層為整個架構的核心邏輯,請務必按照架構格式要求實作自己所需的功能。  

功能:

(1)判斷玩家操作是否符合條件,若符合執行指令(網遊即向伺服器發送請求)。 

(2)根據邏輯(伺服器傳回資料)對Model層中的資料進行修改。 

(3)回調View層中的方法通知操作完成或失敗。 

4.資料層(Model) 

說明:整個Frame的資料中心,位于架構邏輯結構的最底層注意:Model層對每個邏輯層

開放的權限不同,View層對有隻讀權限,Control層對其有讀寫權限。 

功能:  

(1)存放各個功能子產品的相關資料。 

(2)提供資料修改的方法。 

5.一些經驗 

正确的軟體開發應該是懶惰式開發,也稱作忍耐式開發;這種開發的表現是,在真正動手

寫代碼前,程式員要話費大量的時間考慮所有可能的解決方案和途徑,者可以看作是延緩

寫代碼。先把問題了解清楚,確定将要寫的代碼能真正的解決問題,這将避免之後寫出

大量的無用代碼。程式員到後期的提升可以看作是設計思想的提升,因為在後期去學習

各種功能方法的實作并不需要花費太多的時間。在你代碼量積累到一定程度後如果你依舊

沒有自己的設計思想,那你的能力依舊是很普通的。 

6.總結與期望

每位程式員都有自己的書寫風格與思維邏輯,但無規矩不成方圓,為了今後項目能夠更有

效率的進行,是以編寫了這個文檔。本人也按照文檔的設計思想編寫了個代碼架構,裡面

包括了一些範例代碼。作為程式員我相信大家都經曆過對項目熟悉的過程,一個好的架構

結構能起到的作用我相信大家心裡也都明白。本人經驗有限是以設計肯定有不足之處,

希望後來者可以改進。

繼續閱讀