eBay 架構師 Michael Galpin 在 IBM developerWorks 分享:eBay 如何利用 Eclipse 插件與代碼生成器改善開發體驗與代碼品質。
第一階段:Perl → Java V4 架構遷移
- JavaScript 作為原生代碼由 Java 代理
- CSS 檔案 → 運行時生成 CSS 的 Java Class
- 內容契約 XML → Java 代碼
- 核心:Eclipse 代碼生成器自動完成繁瑣轉換
自訂 Eclipse 插件體系
- 多語言轉 Java 生成器:JavaScript/CSS/XML 各種源檔 → 對應 Java 表示
- 自訂 XML 編輯器:處理 eBay 專屬 XML 格式
- 專案依賴管理插件:XML 契約檔 → Eclipse 專案與 classpath 檔自動生成
- XML 契約編輯器:第二個插件提供專用編輯支援
實戰成果
- V4 元件在 Eclipse 中直接開啟、編輯、除錯
- 大規模團隊統一開發體驗,減少人為錯誤
- 代碼生成器確保多語言表示一致性
這是模型驅動架構 (MDA) 在大型電商平台的成功實踐,預示了現代前端建構工具 (Webpack/Babel/TypeScript) 的雛形:以單一真實來源生成多目標產物。