adhesive框架是為了滿足公司內部專案需要開發的一套基礎框架。adhesive這個單詞是膠水的意思,這個名字有幾層含義:
1、框架其本身的元件像膠水一樣相互配合,旨在為乙個中型的網際網路**提供一套基於.net 4.0的開發基礎平台,實現靈活性、效能、伸縮性等。
2、框架對微軟提供的既有技術進行粘合和擴充套件使它們可以更好發揮作用,比如ado.net ef4、asp.net mvc3、.net wcf等。
9、其它:還有一些元件包括基於記憶體的佇列、基於資料量和狀態的報警服務等等。
框架解決方案結構如下:
1、core就是核心元件
2、host是幾個元件服務端的控制台承載和windows服務承載
3、test是一些單元測試和測試專案
4、web是一些服務的後台,比如配置服務和mongodb資料服務
下圖是一張邏輯架構圖:
此圖體現了幾個設計理念:
1、adhesive作為乙個基礎框架提供橫切和擴充套件兩個方面的服務。
2、充分解偶:每乙個層之間都使用依賴注入實現依賴,正因為了有了依賴注入使得相互引用變為可能。
3、可測試性:正因為解偶,使得mockup成為可能,也就使得複雜專案可以獨立測試。每乙個層都應該具有自己的測試專案。
1、使用:如何把元件應用到專案中去。需要注意的是,由於這是乙個框架,其中很多元件無法獨立使用,因此使用的物件很可能本身就是程式設計師而不是終端使用者,需要把元件用到專案中去才可以發揮作用。
2、實現:會講述一些理念,並不會有過多的**。理念包括三部分,首先是設計的理念,比如模組之間如何組織如何重用;其次是抽象的理念,比如很多時候我們在做重複勞動的原因就是因為暫時無法對乙個模型進行抽象,或者很難抽象,一旦相通了那麼就會很通用;最後是技巧,比如如何實現某個功能,或是.net中某點需要關注。這些理念往往比其實現更重要,明白了這些道理要實現就不難了。
框架的設計由我和我的同事共同進行,因此本系列文章也將會鏈結到各自的部落格上面。
已開源 Adhesive框架系列文章索引
一 總體介紹 二 公共模組實現 三 配置服務模組簡介 四 配置服務模組使用 五 應用程式資訊中心模組使用 六 應用程式資訊中心模組實現 七 mongodb資料服務模組使用 上 八 mongodb資料服務模組使用 下 九 mongodb資料服務模組實現 上 十 mongodb資料服務模組實現 下 十一...
已開源 Adhesive框架系列文章索引
一 總體介紹 二 公共模組實現 三 配置服務模組簡介 四 配置服務模組使用 五 應用程式資訊中心模組使用 六 應用程式資訊中心模組實現 七 mongodb資料服務模組使用 上 八 mongodb資料服務模組使用 下 九 mongodb資料服務模組實現 上 十 mongodb資料服務模組實現 下 十一...
Qt Model View系列文章
最近搞了不少自定義model view東西,積累了不少經驗和坑,現在寫下來。我是個快樂的分割線2021.3.30 系統提供的各種標準model使用我在這裡就不闡述了。網上有各種文章和討論,我說下用這些東西產生的一些理解 view不做過多討論,qt提供的各種顯示樣式和編輯樣式,主要還是在與使用者做交流...