2010年1月21日 星期四

What is the Eclipse RCP (Rich Client Platform)?

定義:
Eclipse RCP就是運用許多內建功能來進行開發Client應用程式的一個開發平台


元件架構:
一個minimal standalone RCP application一定包含最基本的三個元件
  •  主程式 - 由org.eclipse.core.runtime.applications來定義RCP main application class(參考圖二)的擴充進入點,這application class會來實做(implements)具bootstrap功能的介面(interface) IApplication。也就是說,要執行一個Eclipse RCP 程式,必須先定義application,它就如同是一個程式的main()function,application會控制整個RCP的生命週期。 
  •  perspective(透視圖) - 由org.eclipse.ui.perspectives來定義perspective class(參考圖二)的擴充進入點,這perspective class會來實做(implements) IPerspectiveFactory介面(interface),在Workbench範圍中可被視覺化物件的操控與呈現。也就是說,perspective是一個可視的容器,收集著許多可視物件和編輯器。 
  •  workbench advisor(工作台顧問)-由application class建構(new)出來的,它是控制workbench的外觀配置。

基本檔案:
我們可以從How to create the new Eclipse Rich Client Platform (RCP)? 得知如何快速建構RCP的eclipse application project。

建構完成後,會自動產生:
  •  程式檔:
    Activator.java,
    Application.java,
    ApplicationActionBarAdvisor.java,
    ApplicationWorkbenchAdvisor.java,
    ApplicationWorkbenchWindowAdvisor.java
    Perspective.java等

  • 其他project資訊檔案: 
    MANIFEST.MF,
    build.properties,
    plugin.XML 等


圖一 RCP基本檔案


我們可以從MANIFEST.MF in META-INF folder得知project資訊和更改其設定值,只要點擊MANIFEST.MF就會出現Eclipse圖視化設定界面視窗,可在Eclipse圖視化界面視窗進行設定project資訊及extension points,Eclipse圖視化界面視窗會自動更改MANIFEST.MF, plugin.xml, build.properties檔案。

可從plugin.xml檔中了解有關插件的擴充進入點和所有擴充點清單,換言之,所有的plugins一定會被列入plugin.xml清單中,也就是我們是可以從plugin.xml檔中得知application 的 runtime applications 擴充進入點,如同main function,當application結束時,整個程式會中止。

圖二 org.eclipse.core.runtime.applications擴充進入點的設定


從plugin.xml檔中得知perspectives的擴充進入點,這class 實做了(implements) IperspectiveFactory介面的page layout的初始化。perspective是一個可視的容器,收集著許多在Workbench範圍中的可視物件和編輯器。


圖三 org.eclipse.ui.perspectives擴充進入點的設定


總結一下什麼是Eclipse RCP application,它是用來開發Client應用程式的平台,擁有許多豐富的功能,主要keyword是利用application控制整個RCP程式的生命週期, 建立了workbench advisor(工作台顧問)來配置workbench的外觀以及使用perspective class來實做在Workbench範圍中的可視物件和編輯器等元件。

沒有留言:

張貼留言