核心結論:互補而非替代
Eclipse RCP(Rich Client Platform)與 Web 技術(B/S 架構)服務於不同業務場景,兩者長期共存、相互滲透,無「誰取代誰」的零和博弈。
Web 技術優勢:零部署、廣覆蓋
- 使用者僅需瀏覽器,零安裝成本。
- 業務邏輯集中伺服端,升級即時生效,極適合高頻變更、大眾化應用(OA、電商、門戶)。
- 跨平台、跨裝置(PC/手機/平板)無縫體驗。
RCP 優勢:豐富交互、離線能力、效能
- 原生桌面體驗:拖曳、右鍵選單、多視窗、鍵盤快捷鍵、大量資料表格/樹形檢視流暢度遠超瀏覽器。
- 離線/斷網作業:本地資料庫、快取、背景同步,適合現場作業、科研分析、IDE 等場景。
- 運算密集型:直接存取本地 CPU/GPU/記憶體,無網路延遲與沙箱限制。
- 插件化擴充:OSGi 動態模組支援第三方無侵入式功能擴充(如 Eclipse Marketplace 生態)。
典型適用場景對照
| 場景 | 推薦架構 | 理由 |
| 企業內部 ERP/CRM(複雜表單、多視窗) | RCP 或 Web + Electron | 需豐富交互、鍵盤導向、多螢幕 |
| 公眾電商/門戶/行銷活動頁 | Web (React/Vue/Angular) | 零門檻觸達、SEO、快速迭代 |
| IDE/建模工具/科學計算視覺化 | RCP | 樹狀導航、屬性頁、圖形編輯器、高效能渲染 |
| 現場巡檢/倉儲/醫療終端(離線優先) | RCP / JavaFX / Flutter Desktop | 斷網續傳、掃描槍/印表機整合 |
| 團隊協作/文件共享/即時通訊 | Web + WebSocket / Electron | 跨裝置同步、輕量客戶端 |
技術融合趨勢
- Eclipse Theia / VS Code:以 Web 技術(TypeScript、Electron)重寫 IDE,保留插件生態,模糊 RCP/Web 界線。
- RCP 內嵌瀏覽器:
Browser 元件(WebKit/Edge/CEF)在 RCP 應用中渲染 Web UI,混合開發。
- WebAssembly:將 C++/Rust 運算核心編譯為 WASM 在瀏覽器執行,縮小效能差距。
- 遠端開發:VS Code Remote / Eclipse Che — IDE 前端在本地(RCP/Electron),後端在容器/雲端。
決策建議
- 業務主導技術:先定「使用者誰、環境什麼、離線需不需要、交互多複雜」。
- 團隊技能:Java 強 → RCP/JavaFX;前端強 → Web/Electron/Tauri。
- 長期演進:模組化架構(OSGi/微服務)讓核心邏輯可同時服務桌面端與 Web 端。
RCP 不會消失,Web 也不會垄斷所有場景。掌握雙棲開發能力,才是架構師的核心競爭力。