999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Eclipse RCP的銀行柜面軟件架構可擴展性的研究

2018-12-24 23:43:59
軟件 2018年5期
關鍵詞:系統設計

劉 艷

(安徽信息工程學院,安徽 蕪湖 241000)

0 引言

軟件架構是一系列相關的抽象模式,用于指導大型軟件系統的設計。良好的軟件架構能幫助項目管理人員更好地管理時間和預算,預防項目后期很多的維護問題的出現。軟件架構的可擴展性是指軟件適應環境變化的能力??蓴U展性是指在面臨環境變化時,軟件不需要改變核心的架構,只需要經過少量的改動就能滿足用戶的需求。如果架構在設計早期沒有考慮過這些需求,那么就需要修復架構的設計甚至會推倒整個架構。最后,達到為了實現新需求而重新開發一套軟件的局面,給軟件項目的成本和風險控制帶來了不利的影響。在軟件架構發展的過程中,出現了一些典型的軟件架構,比如,MVC,事件驅動架構以及微核架構等。

MVC全名是 Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫。它是一種軟件架構的典范,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。這種架構的優點是結構簡單,不同技能的人員可以負責不同的方面,每一層可以獨立測試,其他層的接口通過模擬可以解決。缺點是,當環境變化時,比如代碼調整或者功能增加時,必須變動每一層,導致擴展很困難。

事件驅動框架定義了一個設計和實現一個應用系統的方法學,在這個系統里事件可傳輸于松散耦合的組件和服務之間。它使用分布式的異步模式,事件處理器之間高度解耦,具有良好的軟件可擴展性,性能較好,不容易產生堵塞。缺點在于由于涉及到異步編程,開發者學習起來比較困難,而且分布式和異步特性導致這個架構難以測試。

微核架構又稱為插件架構,指的是軟件的內核相對較小,主要功能和業務邏輯都通過插件實現。內核通常只包含系統運行的最小功能。插件則是互相獨立的,插件之間的通信,應該減少到最低,避免出現互相依賴的問題。這種架構具有良好的功能延伸性,通過開發插件,可以適應功能增加的需求;插件之間是隔離的,插件可以獨立的加載和卸載,測試和部署比較方便;可定制性高,適應不同的開發需求;具有良好的文檔支持,開發者可以在很短的時間內掌握這項技能。

針對傳統軟件架構的缺點,本文提出一種基于Eclipse RCP的軟件架構:首先,該軟件架構是一種微核架構,所以具有良好的可擴展性。第二,在測試步驟,既能獨立加載測試數據進行測試,也能和其他模塊進行集成測試。第三,在升級步驟,可以使用統一升級方式或者本地安裝包的方式升級,不會影響其他模塊的調用。第四,Eclipse整個開源社區為項目提供了豐富的技術和文檔支持,開發人員上手比較方便。本文第1節介紹了Eclipse RCP和它的體系結構。第2節以實際的銀行項目的例子介紹了Eclipse RCP在銀行柜面軟件架構上的應用。最后,第3節對本文的目前工作做了總結,指出下一步的研究方向。

1 Eclipse RCP

1.1 Eclipse RCP介紹

Eclipse是一個基于Java的可擴展的開發平臺。Eclipse的前身是Visual Age,由于其可擴展性較差,同時又面臨其他競爭對手的產品壓力,IBM決定開發一個更加開放的,具有良好可擴展性的,能更好為其開發工具提供支持的集成化平臺[1]。2000年,第一代 Eclipse誕生。Oracle,Google,Red Hat,Borland等巨頭先后踴躍成為該基金會的會員。Eclipse經過多年的更新迭代,目前的穩定版本號是4.7。

Eclipse RCP是一項位于Eclipse平臺核心的功能。它采用微核架構,提供了標準化的組件模型,目的為開發人員提供一個功能強大的、快速的、可擴展性的平臺。RCP是Rich Client Platform的縮寫,即富客戶端,目標是結合胖客戶端和瘦客戶端的優勢并克服其固有的缺點。隨著Eclipse版本的迭代,Eclipse RCP平臺應用快速增加,具有以下優點:

(1)可擴展性

Eclipse基于插件進行擴展的思想使得用戶可以方便地搭建各種規模、類型和用途的應用程序。按照Eclipse官方的說法,Eclipse RCP一開始就被設計為可擴展性的。

(2)方便性

Eclipse RCP對各個平臺下的產品包裝提供了強有力的支持,其開發的RCP甚至可以在嵌入式設備、掌上電腦上運行。由于Java語言的可移植性的特點,Eclipse RCP也可以說是可以跨平臺運行。

(3)統一升級

用戶可以通過Eclipse客戶端,使用遠程或者本地方式進行安裝更新,徹底解除了早期富客戶端應用部署升級的麻煩。

(4)基于組件開發

基于Eclipse的系統由插件組成,開發人員以插件形式添加功能,在這種開發模式下,程序員可以并行開發和獨立測試,提高了程序開發的效率。

(5)良好的用戶體驗

Eclipse為各種操作系統提供了本地圖形接口包。當RCP運行時,Eclipse首先調用本機窗口組件,只有沒有本機所需組件時才進行模擬。RCP在不同的操作系統上都具有一致的外觀和行為。UI設計者使用界面設計工具可以設計出漂亮的用戶界面。

1.2 Eclipse RCP體系結構

Eclipse RCP平臺是運行時內核和插件的組合,由Workbench工作臺,Workspace工作區,Help幫助系統,Team團隊支持系統和Platform運行平臺組成。

(1)Workbench工作臺

為Eclipse提供用戶界面。它是使用SWT(Standard Widget Toolkit)和JFace來構建的;SWT是Java的Swing/AWT GUI API的非標準替代者,JFace則是建立在SWT基礎上,提供用戶界面組件。

(2)Workspace工作區

工作區是負責管理用戶資源的插件。包括用戶創建的項目、項目中的文件,以及文件變更和其它資源。工作區還負責通知其他插件關于資源變更的信息,包括文件創建、刪除或者變更的情況。

(3)Help幫助系統

幫助系統具有與 Eclipse平臺本身相當的可擴展能力。幫助提供一個附加的導航結構,允許工具以HTML文件的形式添加文檔。

(4)Team團隊支持系統

團隊支持組件負責提供版本控制和配置管理支持。它根據需要添加視圖,允許用戶與

有使用的任何版本控制系統交互。

(5)Platform Runtime運行平臺

是整個Eclipse的內核,啟動時檢查已安裝了哪些插件,并創建注冊表信息。為了降低啟動時間,提高資源利用率,平臺使用“懶”加載的方式加載插件,即需要時才加載。

2 Eclipse RCP在銀行柜面軟件架構上的應用

2.1 項目背景

由于歷史原因,銀行柜面系統存在如下問題:字符終端展現能力非常有限,難以滿足低柜業務如理財、貸款、外匯等業務處理要求;柜面系統缺乏強大的平臺支持,往往占相應項目開發工作量的一半以上,業務功能的更新迭代需要大量的維護工作;現有柜面系統的用戶體驗性較差,即使是圖形界面,無法做到真正的所見即所得,二次開發的擴展性亟待提高。在此情況下,如何設計具有良好的可擴展性的柜面軟件架構是需要解決的問題。

2.2 系統分析

銀行柜面系統包含的功能模塊主要有:綜合開戶,綜合簽約,集中授權,單點登錄,交易搜索,公告欄,常用交易,工具,便簽,郵件消息,配置,鎖屏,幫助管理,柜員管理,權限管理,日志管理等功能。同時,需要兼容后期業務擴充的需求,提供一個可擴展性的軟件架構,能夠快速開發新的功能模塊。

2.3 系統設計

銀行柜面系統采用Eclipse RCP插件體系結構,優點如下:1)容易擴展:獨立編譯和打包,獨立部署和測試。2)容易升級:粒度以插件為單位,降低了由于升級帶來的系統宕機的風險;還可以節省網絡帶寬。

銀行柜面系統包括客戶端和服務端,客戶端負責接收用戶的請求,并判斷請求是否在客戶端處理范圍內,如果在,則客戶端直接處理請求并將結果返回用戶;如果不在,則轉發請求到服務端,由服務端處理完畢返回給客戶端??蛻舳撕头斩瞬捎孟嗤腅clipse RCP插件體系結構,包括外設模塊,交易處理模塊,統一配置模塊,資源模塊,通訊模塊,ESB通訊擴展模塊等。

2.4 系統實現

基于 Eclipse RCP的銀行柜面系統采取插件體系架構,可擴展性比較強。下面介紹怎樣在Eclipse RCP平臺上完成將數據庫中的組織記錄以樹狀結構顯示出來。

在開發階段,首先,找到數據庫的插件工程,新建一個類繼承自組件類。然后,得到輸入參數并轉化為符合期望的目標類型。循環所有的組織記錄,找到組織間的層級關系,并設置組織類的關系。最后,將處理后的組織父類顯示在界面上。

在測試階段,自發給這個組件添加輸入參數,添加斷點,查看運行結果是否滿足要求。

在部署階段,選擇導出數據庫的插件工程,然后將壓縮文件部署到銀行柜面測試系統中進行測試。如果結果正確,則部署相應的壓縮文件到生產系統中。

該類主要的源代碼如下:

// 得到輸入的記錄數組

List list = (List)command.getParameter(RECORD_LIST);

// 處理異常

if(list == null) {

throw new Exception(“傳入的數據庫記錄為 null!”);

}

// 構建組織樹

buildTree(list);

// 界面上異步顯示

Display.asyncExec (new Runnable() {

public void run()

{

target.initTree(list);

}

});

3 結論

基于 Eclipse RCP的銀行柜面軟件已經推廣到多家銀行,事實證明,該軟件運行穩定,功能新增快捷,具有良好的可擴展性。但是,由于Eclipse RCP本身使用Java語言開發插件,軟件在運行一段時間后,性能會急劇下降,導致每隔一段時間需要重啟服務器。因此,找到性能瓶頸,有策略的優化程序是下一步要研究的問題。

[1] 陳岡. Eclipse RCP應用系統開發方法與實戰, 電子工業出版社, 2007

[2] 王如迅. 基于SWTBot技術的軟件自動化測試的研究與實現[J]. 軟件, 2016, 37(2): 121-128.

[3] 饒啟聰, 許丹, 蔣海洪. 健康大數據智能采集與挖掘系統平臺的軟件架構實踐[J]. 軟件, 2017, 38(8): 200-203.

[4] 宮愛愛, 丁香乾, 侯瑞春. 基于Eclipse智能代碼生成框架的研究[J]. 現代電子技術, 2013, 36(18): 55-58.

[5] 楊攀. 基于Eclipse RCP框架的地質監測數據可視化應用研究[J]. 電腦與電信, 2015(3): 77-78+84.

[6] 董曉敏. 基于Eclipse RCP平臺的學校經費測算系統設計與實現[D]. 青島理工大學, 2014.

[7] 孫菁. 基于Eclipse RCP的模型測試管理工具設計與實現[D]. 西安電子科技大學, 2015.

[8] 殷新毅. 基于Eclipse RCP的中學學籍管理系統設計與實現[D]. 電子科技大學, 2013.

[9] 陳東山, 陳志偉. 基于Eclipse RCP技術的0. 5T磁共振成像儀控制和數據處理軟件系統開發[J]. 中國醫療設備, 2015,30(7): 30-32.

[10] 于麗. 基于敏捷開發模式的軟件架構設計[J]. 電腦知識與技術, 2015, 11(6): 91-92+94.

[11] 王愛景. 敏捷開發中軟件架構的設計與實踐[D]. 河南大學, 2015.

[12] 馬麗娟. 基于軟件開發環節中軟件架構的作用研究[J]. 電子測試, 2017(13): 69-70.

[13] 白金. 軟件架構模式在信息系統開發中的應用分析[J]. 通訊世界, 2017(10): 249-250.

[14] 王智超, 王敏, 熊燕. 軟件架構設計之多視角分析[J]. 現代計算機(專業版), 2014(30): 35-37.

[15] 姜立. 軟件架構綜合評價系統的設計與實現[D]. 東南大學, 2015.

[16] 孫志勇. 濱海?;瘓FERP軟件架構系統的設計與實現[D]. 電子科技大學, 2014.

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過?!律O計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 亚洲成人高清无码| 久草国产在线观看| 亚洲九九视频| 99热这里只有精品在线播放| 国产亚洲精品自在线| 91口爆吞精国产对白第三集| 国产对白刺激真实精品91| 久久成人18免费| 中文字幕久久亚洲一区| 中文成人在线视频| 国内精自线i品一区202| 亚洲一区精品视频在线| 在线免费无码视频| 国内精品九九久久久精品| 日韩在线视频网| 亚洲人免费视频| a免费毛片在线播放| 久久不卡精品| 中文字幕色站| 亚洲国产精品不卡在线| 在线高清亚洲精品二区| 在线亚洲小视频| 国产网站黄| 国内精品一区二区在线观看| 伊人久久综在合线亚洲2019| 国产午夜人做人免费视频| 国产精品视频公开费视频| 国产精品999在线| 99久久无色码中文字幕| A级全黄试看30分钟小视频| 欧美性天天| 国产美女丝袜高潮| 暴力调教一区二区三区| 日韩精品少妇无码受不了| 99热这里只有精品5| 国产午夜在线观看视频| 欧美日韩北条麻妃一区二区| 国产精品尤物在线| 欧美福利在线| a级毛片一区二区免费视频| 久久久久久国产精品mv| 真人免费一级毛片一区二区| 国产剧情无码视频在线观看| 国产欧美日韩另类| 欧美区国产区| 国产欧美日韩另类| 国产久草视频| 亚洲嫩模喷白浆| 99视频在线看| 91尤物国产尤物福利在线| 日韩精品免费在线视频| 亚洲精品无码久久毛片波多野吉| Aⅴ无码专区在线观看| 国产亚洲欧美在线中文bt天堂| 欧美激情第一区| 91精品视频在线播放| 亚洲一区国色天香| 国产无码性爱一区二区三区| 亚洲无码熟妇人妻AV在线| 亚洲成人在线网| 国产精品无码一区二区桃花视频| 麻豆精品视频在线原创| 国产在线小视频| 亚洲A∨无码精品午夜在线观看| 永久免费无码日韩视频| 国产v精品成人免费视频71pao| 国产精品 欧美激情 在线播放 | 亚洲日韩每日更新| a在线观看免费| 国产亚洲精品va在线| 国产欧美又粗又猛又爽老| 久久精品无码专区免费| 免费一看一级毛片| 亚洲美女视频一区| 久久国产精品影院| 国产在线一区视频| 日韩毛片在线播放| 国产精品毛片一区视频播 | 无码综合天天久久综合网| 欧洲欧美人成免费全部视频| 午夜视频日本| 这里只有精品在线播放|