之前的那個開發架構好幾個朋友都用在了項目裡面,也給我提出了很寶貴的意見,雖然最近一直沒有什麼更新,但是針對朋友們提出的建議,我都仔細考慮了一翻,很多的意見我都融入了系統裡面,将不足之處修改過來,本來想把報表的事兒給搞定,但是想了幾種方案結果都不了了之。曾經有一個朋友說很欣賞我那個讀取DLL檔案的架構,以前我覺得寫得挺亂的,代碼也是比較混亂,有時候我自己翻出來居然要想很久才知道那些代碼是什麼意思,當時之是以舍棄了這套架構,是因為覺得整個項目的Size會越來越大,因為每一個窗體都是一個類庫,然後編譯為DLL檔案,程式去讀取并加載這些DLL檔案,是以采取了直接寫在竹程式裡面的方式,詳細介紹在這裡:
<a href="http://www.cnblogs.com/allen0118/archive/2012/05/10/2494112.html">http://www.cnblogs.com/allen0118/archive/2012/05/10/2494112.html</a>
這樣一來也有一個問題,主程式的EXE越來越大,我覺得理論上是這樣,是以最近忙裡偷閑,将原來的那套架構重新整理了一下,主要有以下幾個變化:
1.每一個窗體皆為一個類庫,實作相應的接口。
2.使用者打開窗體的時候不是直接Open窗體,而是加載DLL檔案,讀取DLL檔案裡面的資訊。
3.每一個窗體所實作的業務仍然在自己的類檔案中完成。
4.隻需要将生成的DLL檔案放在指定的目錄,供程式讀取即可。
<a href="http://files.cnblogs.com/allen0118/document-dll.7z">簡單的說明文檔</a>
在建立的項目裡面實作如下業務:
這裡入去傳入進來的DLL檔案:
這個架構比起之前的那一套,資料處理方面沒有什麼變化,仍然采取存儲過程實作業務邏輯,程式裡面基本上面看不到SQL語句;布局和風格也是沿用以前的做法,仍然是多文檔的布局模式,整體效果還是比較大方的,主要的變化就是核心部分,可以說現在的這套程式跟之前的那一套核心内容完全不一樣了,在耦合性方面也有一些改善。加載的窗體如下圖,都是DLL:
大緻的效果:
多文檔布局模式預覽:
明天開始五一放長假10天,然後自己再接着請了幾天假,終于可以好好休息一下了,五一回來打算再好好優化一下,在這裡祝大家五一愉快!