?

基于.NET的Form動態創建和自動更新架構設計

2017-03-22 20:56韋振錦
電子技術與軟件工程 2017年3期
關鍵詞:架構設計

摘 要在基于.NET平臺化理念設計,以及對相應業務應用系統進行開發的過程中,在業務平臺底層當中,業務Form動態創建,以及其所依賴的Assembly自動更新架構設計,都是十分關鍵的內容之一。在.NEt Frame work開發框架當中,對反射機制進行了提供,利用這種應用設計方法,能夠確保良好的技術基礎。同時,此種架構設計,能夠確保業務動態的有效維護、業務按需部署、業務模塊自動更新、平臺用戶權限靈活分配等,并且為其提供了充足的技術支持。在具體的架構設計當中,則是以.NET、Oracle數據庫、緩存等技術進行設計與實現的。

【關鍵詞】.NET Form動態創建 自動更新 架構設計

.NET是一種Microsoft XML Web services平臺,可允許應用程序利用internet共享數據和實現通訊,不受編程語言、設備、操作系統的影響了限制。.NET平臺可對這些服務進行創建和集成,從而滿足用戶的個性化需求。Form則是VB編程當中的對話框、窗口等對象,是應用程序用戶界面當中的一部分。為了更好的滿足用戶需求,需要實現Form動態創建和自動更新,而以.NET為基礎,通過適當的架構設計,能夠實現這一目標。

1 Form動態創建技術

在.NET Frame work開放框架當中,對Assembly動態加載相關技術、反射機制等進行了提供服務支持,通過反射、解析、訪問程序集Assembly元數據,在程序集內存加載,以及相關包含類動態創建等過程當中,提供了充足的技術保障。同時,對于用戶業務界面中Form類實例的動態創建,提供了充足的依據和支持。在創建Form的過程中,可以采用程序集Assembly直接引用創建,也可以通過非直接引用的方法進行創建,如圖1所示。

在直接引用創建的方法當中,在開發工程當中,直接對Form類所在程序集Assembly進行引用,在用戶窗體的創建中,采用硬編碼new Form()的方法直接進行創建,對用戶業務界面進行展現。該方法的主要優勢在于,啟動程序的過程中,Form所在程序集Assembly,以及其依賴的相關程序集,可在程序域當中進行加在載,這與反射創建相比,具有更為良好的性能,發生錯誤的幾率比較低,調試也比較容易。不過,該方法同樣具有一定的不足支持,那就是在修復Bug、升級維護業務的過程中,存在較大難度,按需部署業務的靈活性不足,業務安全性、權威限管理等也相對較低。

另一種方法是非直接引用的創建方式,在這種創建方式中,工程開發當中不會對Form類所在程序集Assembly直接進行引用,而是利用反射機制,對用戶窗體進行間接創建,并對Assembly進行動態加載,從而對用戶業務界面進行展現。這種方法的主要優勢在于程序創建Form具有較高的靈活性,在修復Bug、升級維護業務的時候較為有利,可以根據需求部署相關程序業務,程序集Assembly的動態更新較為容易,同時具有較高的業務安全性和用戶權威限管理,應用程序的擴展性也相對較高。此外,這種非直接引用的創建方法,還能夠支持只對業務平臺底層相對不變變化不大的程序集的部署,而榮用戶根據權限在客戶端內存中動態加載其它的需要的業務程序,無需在客戶端進行程序集文件的落地安裝部署,因而業務安全性、程序靈活性都能夠得到理想的提升。不過,非直接引用的創建方法具有較為復雜的技術實現框架,程序調試難度加大,需要采用服務器端緩存技術、客戶端緩存技術、以及其它一些相關技術對其性能進行提升。

2 緩存技術

在上述技術框架當中,包辦了服務器端緩存、客戶端緩存等內容,能夠對業務平臺程序整體性能進行提升,使網絡數據傳輸量得到降低,從而使網絡利用效率得到提升,降低數據庫服務器訪問量、中間服務器并發訪問量,使數據庫數據查詢的IO成本得到降低,最終實現程序可靠性、穩定性的提升。

在服務器端緩存中,Form動態創建技術框架,在服務器端采用了Oracle Result Cache緩存技術,能夠對創建Form各種數據庫數據進行緩存,使數據庫服務器相應性能、查詢性能得到提升,并確保數據庫集緩存數據更新的及時性、和一致性進行確保。綜合考慮數據庫服務器配置性能,以及IIS等中間件服務器,不采用Form動態創建中間件服務器緩存策略,從而使程序代碼開發量降低。

在客戶端緩存方面,在.NET Frame work 4.0當中,對緩存開發架構進行了提供服務支持,在客戶端,Form動態創建技術框架,對Memory Cache內存緩存技術進行了應用,對創建Form相關后臺定義權限數據、程序及數據等進行緩存,從而降低后臺服務器訪問量,提升客戶端程序相應性能,根據業務使用情況,對緩存時間、緩存策略等進行確定。

3 Oracle數據庫技術

在Form動態創建及自動更新架構中,Oracle數據庫設計主要與應用程序菜單表、應用菜單菜單功能表、應用程序程序集版本控制表等內容相關。其中,應用菜單菜單功能表主要是對創建Form的元數據信息進行保存,基于.NET反射機制,以及表中相關定義數據,程序能夠對用戶業務Form界面進行動態創建,應用程序程序集版本控制表則主要對業務程序及信息進行存儲,用于Assembly動態更新、MD5檢查、業務程序集版本控制等。

4 結論

在給予.NET的Form動態創建和自動更新架構設計中,包含了Form動態創建技術、緩存技術、Oracle數據庫技術等,綜合各種技術完成設計,為用戶提供跟更好的服務。

參考文獻

[1]羅福強,白忠建,楊劍.Visual C#.NET程序設計教程[M].北京:人民郵電出版社,2013.

[2]Karli Watson.C#入門經典.6版[M].北京:清華大學出版社,2014.

[3]王清培..NET框架設計模式、配置、工具[M].北京:人民郵電出版社,2015.

[4]林樹澤,盧芬.Oracle 119 R2 DBA操作指南[M].北京:清華大學出版社,2013.

作者簡介

韋振錦(1976-),男,梧州市藤縣人。大學本科學歷?,F為廣西柳州市自動化科學研究所高級工程師。研究方向為工作流、智能表單。

作者單位

廣西柳州市自動化科學研究所 廣西壯族自治區柳州市 545001

猜你喜歡
架構設計
基于安全性需求的高升力控制系統架構設計
虛擬收費站架構設計與高速公路自由流技術
大數據時代計算機網絡應用架構設計
對稱加密算法RC5的架構設計與電路實現
應用于SAN的自動精簡配置架構設計與實現
基于星務計算機的系統軟件架構設計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合