只要有心,人人都可以成為「蝕」神!
Erich Gamma and Kent Beck, Contributing to Eclipse: Principles, Patterns, and Plug-Ins, Massachusetts: Person Education, 2004.
這本書的作者是大名鼎鼎的Erich Gamma,他就是「物件導向設計模式」的作者之一,而他和 Kent Beck是JUnit的開發者和維護者。這本書主要是介紹eclipse貢獻開發的重要觀念和資訊,並且說明Eclipse的生態系,其中Eclipse有個重要觀念:就是每個使用eclipse的用戶都是潛在的程式開發人員。作者說這和Smalltalk的目標很像,授予用戶能夠使用Eclipse的經驗,而且提供用戶有更多權力的學習環境,進而不斷提升整個Eclipse的功能。
在Eclipse生態系中有6個角色:
- Users:使用者,使用Eclipse的程式開發人員。
- Configurers:配置者,根據自身的使用經驗設定Eclipse功能。
- Extenders:擴展者,改變原本Eclipse的既有功能,讓Eclipse擴充做更多的事情。
- Publishiers:發佈者,開發好用的擴充套件,提供給Eclipse的使用者。
- Enablers:啟用者,提供擴充套件的擴充點讓更多開發人員擴充既有功能。
- Committer:提交人,Eclipse是Open Source Project,由提交人組成的委員會管理。
貢獻Eclipse之前,必須先了解eclipse的軟體架構,基本上Eclipse是採用外掛架構(plug-in architecture, 或稱插件架構),外掛架構由兩個部分組成:
- 擴充點(extention points):提供外掛放置的地方(places-to-plug-things-in)
- 擴充(extentions ):外掛的元件(things-plugged-in)
- Plug-in Development Environment (PDE):外掛開發環境,擴充JDT使Eclipse支援外掛的開發。
- Java Development Tools (JDT):Java開發工具,讓Eclipse成為完整的Java整合開發環境。
- Platform:定義通用性程式語言(common programming-language-neutral)的基礎架構
- 使用者介面部分(User Interface, UI)
- Workbench(工作臺)
- JFace
- Standward Widget Toolkit, SWT
- 核心部分(Core, UI-independent)
- Workspace(工作區)
- Runtime
###
沒有留言:
張貼留言