簡介
還處於初級階段的 e4 項目是下一代的 Eclipse。Eclipse V4.0 將在 2010 發布。以當前的 Eclipse 和 OSGi 技術作為堅實的基礎,e4 的一個主要目標就 是讓您能更輕鬆地編寫和重用組件。將來,跨各種計算環境(Web/RIA、案頭、服 務器、雲、嵌入式裝置)將會有一個統一的通用平台,並且將會有更多的技術被 整合進 Eclipse。比如:
一個基於 OSGi 的增強編程模型,它可提供更好的軟體組件隔離。
XWT,一個新的工具包或架構,用於聲明性地定義 SWT/JFace 應用程式的結構 。
Cascading Style Sheets (CSS) 可以在不必顯式地修改應用程式代碼的情況 下呈現 UI 組件。
標準小組件工具包(SWT)的一個新連接埠,也被稱為 SWT 瀏覽器版本,它可以 讓當前的 SWT 應用程式在瀏覽器的 Flash 播放器中被執行。
用 JavaScript 編寫軟體以便在 Eclipse 運行時內執行。
在本文中,瞭解 e4 的一些主要特性。我們還會建立一個使用 e4 的新 XWT 介面和資料繫結特性的應用程式範例。XWT 是一個聲明式工具包,用來以 XML 編 寫 SWT/JFace UI 組件。
新特性
從編程模型到運行時擴充,e4 增加了不少新特性。這些新特性讓 Eclipse 平 台有了可擴充性。本節將簡要介紹一些值得關注的新特性。
服務編程模型
在最初的服務編程模型(OSGi 或 Eclipse 延伸註冊表)內有三個參與者:服 務代理、服務提供者和服務使用者。服務提供者將自登入到服務代理,而服務 使用者則會在服務代理中尋求自已需要的服務。這很好地拆分了服務提供者與使 用者,但它要求服務提供者與使用者對特定的服務代理有清晰的瞭解。
e4 中的增強服務編程模型引入了上下文(它是服務代理的一部分)的概念作 為一種儲存和知道該如何定位這些服務並將其提供給服務使用者的機制。在運行 時,服務使用者使用依賴注入技術來注入所需的服務提供者實現。這消除了對服 務代理的瞭解。服務提供者可以使用各種技術來將自已聲明或註冊給服務代理。 圖 1 展示了服務編程模型的發展和演變。
圖 1. 服務編程模型
模型化的 UI
在 Eclipse 平台 UI 的早期版本中,workbench 被顯式地寫入程式碼來布局 workbench 視窗、workbench 頁面、編輯器地區或視圖堆棧。定製基於 Eclipse 的應用程式是不允許的。
e4 引入了額外的一層,可將 UI 元素提取和抽象成一個模型。應用程式可以 重新設定或擴充這個模型來製作不同的外觀。這個模型也可被動態操縱;模型的 改變可以立即反映出 UI 的變化。