嗯 GUI庫(kù)應(yīng)該分為幾個(gè)大的模塊呢? :)我想
這次的GUI庫(kù)我會(huì)采用類似GUICHAN的方式,具體的GUI并不依賴于特定的圖形接口,而是采取插件的方式動(dòng)態(tài)加載,這樣有助于提高其使用的廣度
應(yīng)該包含一個(gè)GUIRender
另外GUI庫(kù)涉及面比較廣,需要有大量附加的數(shù)據(jù)結(jié)構(gòu)比如XML,圖形處理,向量,插件,基本對(duì)象,日志等。我們應(yīng)該再加一個(gè)輔助庫(kù)
于是有一個(gè)叫做Util的東西
其次我們主要的GUI庫(kù)類
這個(gè)是核心
我暫時(shí)給他起個(gè)名字叫coregui吧
這個(gè)是這個(gè)GUi的核心
其功能除了一般的GUI控件對(duì)象之后還應(yīng)該有控件工廠,控件池(管理器),控件數(shù)據(jù)串行化,控件布局,控件編輯,控件動(dòng)態(tài)加載,腳本處理等功能(想想功能還比較多-不過(guò)總比之前做的游戲引擎量要小很多)
分塊就這么幾個(gè)了
在開(kāi)發(fā)過(guò)程中,我會(huì)一個(gè)一個(gè)GUI對(duì)象都貼上來(lái),然后說(shuō)明為什么要這樣做,并附上可能對(duì)應(yīng)的設(shè)計(jì)模式(要活學(xué)活用(⊙v⊙)?)
PS:其實(shí)一個(gè)比較好的辦法是借助于UML,可是我現(xiàn)在忘了這幾個(gè)字母如何寫(xiě),有空學(xué)學(xué)吧