VB程序架構分析

 

在08年,我曾經寫過VB程序。前面也將該VB程序的架構剝離出來併發出來共享了(具體見http://www.cnblogs.com/lzhdim/archive/2012/03/08/2385028.html)。這些天快過年了,也沒啥事,就想將該架構作個分析,僅作留念吧。html

下面是該VB架構的主要部分:架構

 

下面對該架構作分析。併發

 

首先看看LogHelper這個組件。使用組件的好處是將各個不一樣用途的代碼封裝起來,以達到分層或者讓程序的架構看起來更舒服。我這裏講組件看作主程序的插件使用。後續若是要編寫使用插件的VB程序,能夠進行參考。。。函數

 

一、  frmAbout是個關於窗口,用於顯示該組件的相關屬性插件

 

後面在主程序裏若是使用該組件,能夠經過調用該組件的一個API函數來顯示該組件的相關屬性信息。3d

 

該窗體的代碼也很簡單,就是一個調用API函數顯示該組件的相關信息。基本上每一個組件都有該窗體htm

 

二、  接下來看APICoordinator模塊。對象

 

這個APICoordinator模塊主要聲明該組件使用到的Windows API函數定義。基本上每一個組件都有該模塊blog

 

三、  接下來看APIEnumerations模塊get

 

這個APIEnumerations模塊主要聲明瞭該組件使用到的枚舉對象。基本上每一個窗體都有該模塊。

 

四、  接下來看看DLLInfo這個類模塊

 這裏從代碼能夠看出該類模塊主要提供了一個API函數以獲取該組件的相關信息。基本每一個組件都有該類模塊。

 

五、  接下來看Global類模塊

 

該類模塊主要對外提供公共的對象聲明。基本每一個組件都有該類模塊。

 

六、  接下來看看MainAPI這個類模塊。

 

MainAPI就是該組件的主要模塊了。這裏將該組件的主要代碼和實現的功能進行存放。

這裏有句Private mDLLInfo As LogHelper.DLLInfo 就是將該組件的DLLInfo這個類模塊進行了聲明以供主程序調用顯示。

 

接下來對主程序架構進行分析。

一、  先看窗體。

 

這裏只提供了主窗體Main和歡迎窗體Splash。提供歡迎窗體的好處就是對主程序進行初始化。

 

歡迎窗體主要實現該軟件的相關基本信息。

 

二、  接下來看看AppConstants模塊

 

該模塊主要聲明瞭主程序使用到的各個常量。

 

三、  接下來看AppTypesDeclare模塊。

 

該模塊主要聲明瞭主函數使用到的類型,從上圖能夠看出定義了一個消息枚舉。

 

四、  接下來看AppWin32API模塊

 

該模塊主要聲明瞭主程序主要使用到的Windows API函數。這裏沒對各個API函數進行註釋,請使用到的各位本身註釋。

 

五、  接下來看AppWindowProcess模塊

 

該模塊單獨提出來,對主程序接收的消息進行處理。

 

六、  接下來看DLLRegister模塊

 

該模塊主要提供對使用到的DLL或者之後要使用的插件DLL進行註冊以進行調用。

 

七、  接下來看Helpers模塊

 

 

八、  接下來看StartMain模塊

 

該模塊提供了主程序的入口。主要對主程序進行初始化。

 

九、  接下來看AppFunction類模塊

 

該類模塊主要聲明瞭主程序使用到的各個函數。

 

十、 接下來看AppHelpers類模塊

 

該模塊主要對各個使用到的組件進行聲明,以便進行調用。

 

十一、接下來看AppMsgProcess類模塊

 

該模塊主要提供了各個消息對應須要處理的函數。

 

十一、 接下來看AppVariables類模塊

 

該類模塊主要提供了主程序使用到的變量聲明。

 

 

接下來對使用該架構進行描述。

先添加組件

 

1.1 選擇添加工程

 

 

1.2 選擇新建ActiveX DLL 。

 

 

1.3 將DLL目錄複製過去。

 

 

1.4 選擇添加窗體、模塊、類模塊

 

 

 

1.5添加完畢

 

 

接下來添加主程序

 

1.1 選擇 添加工程

 

 

 

1.2 將目錄複製過去

 

 

1.3 保存工程組

 

 

接下來就是對該架構進行修改以實現功能了。。。

 

一、修改StartMain.bas模塊中的啓動代碼。

 

 

二、往AppConstants模塊添加常量。

 

 

三、往AppHelpers類模塊添加組件聲明

 

 

四、往AppFunction類模塊添加函數

 

這裏添加了初始化和結束主程序的代碼。。。

 

五、往AppMsgProcess類模塊添加消息處理代碼

 

 

六、往AppVariables類模塊裏添加變量

 

 

該架構的好處,就是基本讓VB程序實現了命名空間的效果。其中的變量、函數、組件提供的函數等都是經過類模塊實現了,從而在代碼裏能夠直接.出來。具體本身去體驗吧。

 

好了,到這裏該架構基本介紹完畢,剩下的就是對該架構代碼進行補充以實現主程序的功能了。

相關文章
相關標籤/搜索