摘要:應用軟件開發公司面臨著開發成本居高不下,軟件開發風險難以控制,客戶的變更需求難以滿足,知識的繼承性難以提高等問題,專業的框架平臺(FrameWork)為開發提供強有力的支持。最有代表性的當然是.NET、Springs等,但是確缺少代碼自動化解決,為此在此基礎上的必要封裝、改進的框架平臺應運而生,Anten-FW就是其中之一。Anten-FW框架平臺產品是北京昂天科技有限公司的核心團隊經過不斷的努力,在消化吸收了大量國內外相關產品經驗和理念的基礎上,研發出來的產品。旨在全面提高應用軟件開發的生產效率和產品質量。Anten-FW框架擁有:繼承于微軟.NET2.0核心框架平臺,各種設計模板,簡單易學的代碼生成工具等特點。Anten-FW能為軟件開發提供快速開發快速導入等支持,非常有效地提高軟件開發效率,省去了系統架構師的全部工作,降低了對開發人員的技術要求,有效地降低了軟件開發的人員成本。Anten-FW還有效的提高了軟件開發的標準化,提高了開發過程的可控性,提高了開發預算的精確度,有效地降低軟件開發的風險。
關鍵詞:框架平臺 軟件開發工具
1 Anten-FW框架平臺研發的背景介紹
Anten-FW框架平臺由北京昂天科技有限公司研發。該公司多年來專注于軟件架構的研究,并專注于自動生成工具的研究,公司總經理李增通在13年的軟件開發過程中,致力于自動生成工具的研究,在實踐中總結了大量的經驗,在多個項目中有過很好的實踐。所有自動生成工具的實踐項目都非常有效地提高了軟件開發的生產效率,為公司創造了很好的經濟效益。
2 Anten-FW框架平臺概述
Anten-FW框架平臺產品是北京昂天科技有限公司的核心團隊經過不斷的努力,在消化吸收了大量國內外相關產品經驗和理念的基礎上,研發出來的產品。旨在全面提高應用軟件開發的生產效率和產品質量。
其組成如下:①核心框架平臺:支持C#語言,嚴格按照MVC結構分層,在微軟的.net framework2.0的基礎上進行了封裝。其中一是封裝了管理系統軟件所需要的日志處理,數據庫訪問處理,登錄者信息管理,消息處理等內容;二是將應用軟件開發所需要的共通處理全部進行了封裝;三是支持各種數據庫的訪問;四是適用于B/S和C/S的系統開發。實現了B/S和C/S結構的后臺處理(AL,BL,BE層)的共用;五是本框架支持OnLine和OffLine系統的開發,通過C/S結構中對于WebService層的控制實現OffLine的處理。②各種設計模板:通過對幾十個實際項目的設計資料的整理和提煉而整理出來的設計模板,全方位地支持應用軟件開發的設計工作的實施。③代碼生成工具:以核心框架平臺為基礎,以設計模板為依據,自動生成70%以上的代碼,框架結構的代碼也全部生成,程序員只需要關注部分業務邏輯的實現。
為軟件開發提供以下的支持:①支持快速開發快速導入,通過有效地利用設計模板和自動生成工具可以將開發周期縮短一半,并且可以按照客戶的要求迅速地建立原型。②非常有效地提高軟件開發效率,利用代碼生成工具可以自動生成70%以上的代碼,極大地提高了軟件開發的生產效率。③省去了系統架構師的全部工作,降低了對開發人員的技術要求,有效地降低了軟件開發的人員成本。對于有C#經驗的開發人員,只需要培訓兩天即可達到熟練使用本框架平臺產品的程度。④有效地提高了軟件開發的標準化,提高了開發過程的可控性,提高了開發預算的精確度,有效地降低軟件開發的風險。
3 Anten-FW框架平臺結構與簡介
Anten-FW框架采用4層結構,同時支持C/S結構和B/S結構。AL層,BL層,BE層對于C/S和B/S結構可以通用。
圖1 Anten-FW框架結構圖
3.1 UI層介紹 ①本框架封裝了表示層的基類。a所有web畫面都繼承于WebUI層的基類。b所有Windows畫面都繼承于WindowsUI(WinForm)層的基類。②表示層主要用于畫面數據的讀取和顯示,表示層基類里封裝了對登陸用戶的主要信息的保存和讀取的處理。③在表示層基類中封裝了異常信息處理,日志文件寫入處理,配置文件信息的讀取處理。④支持智能客戶端技術。
3.2 AL層介紹 ①AL是Application Logic的縮寫,AL層用于實現webUI層與BL層的數據傳遞,和分歧處理。②所有AL層的類都繼承了AL層基類。③AL層中實現事物處理控制。在AL層的基類里封裝了事物處理(提交,回滾)的邏輯。④AL層基類中也封裝了異常信息處理,配置文件的讀取處理。
3.3 BL層介紹 ①BL是Business Logic的縮寫,BL層主要用于實現系統的業務邏輯,是框架中非常重要的一層。②所有BL層的類都繼承了BL層基類。③BL層基類中也封裝了異常信息處理,配置文件的讀取處理。
3.4 BE介紹 ①BE是Business Entry的縮寫,BE層用于實現對數據庫的操作。②BE層分別封裝了對不同數據庫的訪問處理,包括oracle數據庫,SQL Sever數據庫,DB2數據庫,MySQL數據庫等。③BE層基類中也封裝了異常信息處理,配置文件的讀取處理。
3.5 Utility層介紹 本框架也封裝了許多其他的共通處理:封裝了ftp上傳下載,ftp信息讀取等。封裝了文件的壓縮與解壓縮處理。封裝了excel報表生成處理。封裝了通用的自定義控件及一些共通的方法。封裝了加密解密的處理。
3.6 異常處理設計 ①本框架將異常處理封裝成一個基類,UI層,AL層,BL層,BE層中異常處理類都繼承此基類。②當系統發生異常時,能夠自動將異常信息寫入日志文件。③異常信息中包含異常發生的時間,發生異常的文件,方法及位置等內容。
3.7 Excel報表文件處理設計 ①本框架封裝了Excel報表的打開,寫入,關閉等功能,讓報表制作變的更加方便和簡單。②本框架同時支持第三方的報表處理。
3.8 文件的壓縮和解壓縮 ①本框架實現了單個文件和多個文件的壓縮和解壓縮,并能設定壓縮的級別。②通過對于報表模板的壓縮和解壓縮,可以有效提高系統的通訊性能。③對于C/S結構,可以把畫面和AL層之間傳遞的信息進行壓縮和解壓縮處理,可以有效提高系統性能。
3.9 ftp上傳與下載 調用共通類中的方法便能方便地實現ftp文件的上傳和下載,并能刪除ftp上的文件,和取得文件列表信息。
3.10 配置文件讀取設計 ①將配置文件讀取處理封裝成一個共通類,系統中如需要讀取配置文件的信息,只需要調用此類中的方法便可取得配置文件的信息。②在系統的各層處理中都可以方便地調用配置文件讀取的方法,使得開發過程變得簡單。
3.11 日志處理設計 當系統發生異常時,將異常封裝成特定的異常對象,在UI層將異常信息寫入日志,日志中包含異常發生的位置,異常詳細信息和操作用戶的信息。
3.12 消息管理設計 ①本框架中的消息用資源管理器管理,將讀取消息的處理設計為一個共通類,在需要讀取消息時調用這個類中的方法即可。②消息分為異常,正常,詢問三種類型。③在系統的各層處理中都可以方便消息處理,使得開發過程變得簡單。
3.13 自定義控件介紹 本框架封裝了數字控件,日期控件,下拉列表文本框復合控件,字符控件等一些常用的控件,不僅減少了使用JavaSCript進行驗證的代碼量,而且有效提高了畫面的可操作性。
參考文獻:
[1]鄧水光,黃龍濤,尹建偉,李瑩,吳健.Web服務組合技術框架及其研究進展[J].計算機集成制造系統,2011(02).
[2]胡傳廉.基于信息系統技術框架的“智慧水網”規劃方法研究[J].水利信息化,2011(03).
[3]徐其春,楊永艷,楊寧.大型企業云計算技術框架研究分析[J]. 電力信息化,2011(08).