RCP Eclipse

簡介

RCP,Rich Client Platform,富客戶機平臺
Rich Client是一個相對的概念,主要是針對時下廣泛的基於WEB的應用,因爲這種客戶端(也即現有的各種瀏覽器)的運行環境沒有提供一個很好的組件模型和交互模型致使這種應用的界面的同服務之間的交互變得很奇怪,每一次交互都需要重新組織出整個界面,而這個界面的組織基本在服務器端完成,也所以致使表現層的邏輯居於服務器端,所以稱這種爲Thin Client,而相對的則是Rich Client,目前來說在技術上Rich Client還沒有一個甚或是兩個大一統而且又成熟的標準技術出來,所以Rich Client只能說是一種架構方式,其特點便是服務同表現完全的物理分離,表現邏輯完全由客戶端來負責,這是最關鍵的一點。但我認爲一定要同時兼顧原有WEB應用的零部署等特點。

組件

核心平臺(啓動Eclipse,運行插件
OSGi(標準集束框架)
SWT(可移植構件工具包
JFace(文件緩衝,文本處理,文本編輯器
Eclipse工作臺(即Workbench ,包含視圖(views)、編輯器(editors)、視角(perspectives)、和嚮導(wizards))

Eclipse RCP

Eclipse RCP是一項位於Eclipse平臺核心的功能。大多數人想到Eclipse時,會想到Java集成開發環境(IDE)。如果將Eclipse中關於IDE的內容剝去,剩下的就是一個提供基本工作臺功能的核心,包括對可移動以及可疊加的窗口組件(編輯器和視圖)、菜單、工具欄、按鈕、表格、樹形結構等等的支持,而這個核心就是EclipseRCP。
個人理解EclipseRCP就是由插件開發轉向桌面應用開發,構建最小化的Eclipse平臺(8M)運行你的桌面應用,不必再爲程序框架煩心,擺脫失敗的AWT和Swing,讓程序擁有專業級效果,而實現又很簡單、很優雅。
RCP提供了豐富的界面控件,這使得基於Java開發桌面應用也變得容易了很多,雖然仍然不能和基於VB、Delphi進行相比。對於開發者而言,儘管使用RCP也是爲了開發桌面應用,但RCP給開發者帶來的更多的感覺是在它充分發揮了插件化系統的優勢,RCP可以視爲基於OSGi(OpenServiceGatewayInitiative)構建插件化系統的最佳實踐的指導,從RCP的設計中,可以學習到如何將應用做到模塊化、將應用做到動態化,甚至還可以學習到如何自動生成界面這樣的設計思想。RCP可以看做是基於OSGi做插件化應用系統的最佳實踐,其中的不少設計方法甚至都可以整理成爲基於OSGi做插件化應用系統的設計模式,讓我們進入RCP之旅,揭開面紗,一探其本質吧!相信大家在瞭解了RCP的設計思想,看過其代碼後,不得不對RCP表示崇高的敬意,大師之作,不同凡響。
EclipseRCP爲應用程序開發人員提供了:
應用程序和特性的一致且本地的外觀;
公共應用程序服務,例如窗口管理、更新管理、幫助和選擇管理;
本地的外觀,利用Windows、MacOSX、Linux、Solaris、HP-UX、AⅨ和嵌入式設備上的實際平臺窗口部件;
標準化的組件模型
普及的可擴展性;
整合的更新機制;
頂級開發工具(Eclipse軟件開發包(SDK)是世界級的軟件開發環境)。
EclipseRCP項目用SWT圖形庫和工具包取代了Java標準中的AWT和Swing。SWT直接調用了操作系統的圖形庫,從而使得Java應用程序的LOOK&Feel與操作系統的習慣完全一致;更爲重要的是,對本地方法的直接調用大幅度的提高了基於SWT的Java應用程序的運行速度。SWT的缺點主要在於兩點:不是Java語言標準;支持的平臺太少。
一個EclipseRCP可分爲如下五個部分,
⑴Workbench工作臺
爲Eclipse提供用戶界面。它是使用SWT(StandardWidgetToolkit)和一個更高級的API(JFace)來構建的;SWT是Java的Swing/AWTGUIAPI的非標準替代者,JFace則建立在SWT基礎上,提供用戶界面組件。
⑵Workspace工作區
工作區是負責管理用戶資源的插件。它包括用戶創建的項目、項目中的文件,以及文件變更和其它資源。工作區還負責通知其它插件關於資源變更的信息,比如文件創建、刪除或者變更。
⑶Help幫助系統
幫助組建具有與Eclipse平臺本身相當的可擴展能力。與插件向Eclipse添加功能相同,幫助提供一個附加的導航結構,允許工具以HTML文件的形式添加文檔。
⑷Team團隊支持系統
團隊支持組件負責提供版本控制配置管理支持。它根據需要添加視圖,以允許用戶與所有使用的任何版本控制系統交互。大多數插件都不需要與團隊支持組件交互,除非它們提供版本控制服務。
⑸PlatformRuntime運行平臺
平臺運行庫是整個Eclipse的內核,它在啓動時檢查已安裝了哪些插件,並創建關於它們的註冊表信息。爲降低啓動時間和資源使用,它在實際需要某個插件的時候才加載該插件。除了內核外,其它每樣東西都是作爲插件來實現的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章