京山游俠

          專注技術,拒絕扯淡
          posts - 50, comments - 868, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
          上一篇:
          Eclipse RCP詳解(03):SWT的相關概念以及一個連連看游戲的實現

            最近又去圖書城逛了一圈,想看看有沒有什么意外的驚喜,特別是想看看有沒有Eclipse RCP方面寫得比較深入的圖書。然而結果是非常令人失望的。在整個計算機圖書區,找不到一本和Eclipse有關的,更別談RCP了。Java GUI編程的書不是沒有,然而都是講Swing和JavaFX的,似乎Eclipse RCP這個技術從來就不存在。

            我前前后后也讀過幾本Eclipse的書,這些書基本上都是在亞馬遜上買的。我另外一些關于Eclipse的知識則是來源于Eclipse官方網站上面的英文資料。下面,我把這些學習資料列出來,并適當做一些點評,和大家分享。

          一、最權威的資料:Eclipse的官方文檔
            http://www.eclipse.org/documentation/
            由于Eclipse RCP程序是一種特殊的Plug-in程序,所以參考資料都在Platform Plug-in Developer Guide這一節。包括SWT、JFace、Workbench等的API手冊都在這里。從這里學習RCP有一個優點,那就是可以看到各個版本API的變化,比如哪些API是Deprecated的。從API的變化可以看出Eclipse編程哲學的變化。比如說,文檔中介紹怎么為Workbench添加菜單、工具欄的章節,在3.X版本的文檔中,既包含了Actions,又包含了Commands。而到了4.X版本中,就只介紹Commands了。從這里學習RCP也有一個缺點,那就是這里的講解很簡略,雖然API手冊很全面,但是卻很難找到學習的入口點。

          二、Eclipse Wiki中的RCP頁面
            http://wiki.eclipse.org/Rich_Client_Platform
            這里好東西也不少啊。有好幾個專家寫的不同版本的Eclipse RCP tutorial,還有好幾屆EclipseCon上面關于RCP高級編程方面的報告,提供PDF下載。想知道Eclipse 4中RCP編程的模型發生了什么變化,讀一讀Eclipse 4 RCP tutorials就一目了然了。

          三、一本非常好的英文書
            
            我這里給的圖片是直接從亞馬遜網站上拉下來的,大家可千萬別相信上面在線試讀字樣,在我的博客中這是不可能的。
            不過我可以告訴大家一個秘密,那就是這本書的PDF都可以從CSDN上面下載到。
            另外再告訴大家一個非常重要的秘密啊,那就是:這本書的中文翻譯非常垃圾,簡直就是一坨屎,所以大家還是看英文版吧。
            這本書的三個作者都非常牛逼,Jeff McAffer是Eclipse RCP和OSGi的領導者之一,Chris Aniszczyk是Eclipse插件開發環境的領導者之一,所以他們寫的東西肯定是對Eclipse RCP介紹非常透徹的。另外一個作者Jean-Michel Lemieux曾經是Jazz項目的首席架構師和主要開發者,現在是Eclipse項目的貢獻者之一,他的優勢就是對大規模的企業級開發非常有心得。
            我從這本書中學到不少,該書第二版對應的Eclipse版本是3.5。唯一有點美中不足的是,該書使用的英語略顯晦澀,即使我自認為英語很好,也只能慢慢地啃。

          四、我讀過的最早一本中文Eclipse圖書
            
            我讀這本書的時候Eclipse還是3.2。現在這本書已經沒有賣的了,即使是在亞馬遜。權當紀念吧。不過該書的PDF在網上是一找一大把。

          五、我讀的最新一本Eclipse中文圖書
            
            這本書的作者實力也很雄厚。這本書讀起來也很順。但是我覺得他包含的有用的信息量不夠。在這本書的前面約三分之二的篇幅是講SWT和JFace的,講得非常好,是個不錯的參考。但是中間只有一點點內容講RCP,很簡短,比官方文檔中的介紹還短,一點也不深入。最后一部分講Spring,只有兩章,讀起來也很順,但是我認為雖然作者的企業級開發實力很雄厚,但是在客戶端編程時直接使用Spring訪問數據似乎有點搞錯了方向。正確的做法應該參考我推薦的那本英文書,在客戶端,只需要一個Session用來和服務器通訊即可。Spring,還是留給服務器端用吧。就是想用依賴注入也不需要Spring了,因為Eclipse 4自己提供這個功能了。當然,這本書中的示例,使用Spring DM寫OSGi bundle,然后放到Eclipse中用,還是蠻有啟發性的。

          六、我讀的另外一個牛人的兩本牛書
            
            它們的作者都叫周志明,是個牛人。后面一本看起來和Eclipse關系不大,我在這里列出來就是為了證明它們的作者很牛。這兩本書其實都和Eclipse RCP關系不大,但是讀一下還是很有用的。比如在前面一本書中,前兩章對OSGi的介紹深入淺出,讀完這兩章后就明白原來一個bundle最重要的是它的SymbolicName和Version,其它的數據都是給人讀的,也明白了我們不僅可以依賴一個plugin,而且可以單獨導入一個bundle的某個package,更可以把一個package分開放到N個bundle中,每個bundle實現這個package的一部分。再比如作者介紹到每一個bundle都有自己的類加載器,當然plugin有例外,fragment plugin就沒有自己的類加載器,而是和host plugin共用一個類加載器,理解這一點后再理解i18n問題就簡單了,因為i18n的本質就是加載別的plugin里面的message資源。理解了類加載器的概念也更容易理解怎么從別的plugin里面加載資源,比如圖片。

          總結:雖然目前國內圖書市場有幾本關于Eclipse RCP的圖書,但是它們對RCP的介紹不夠深入。我的這一系列博文定位是不一樣的。比如我就拋開SWT各個控件的具體用法不講,只關注于如果要實現某一類功能,RCP程序應該用到哪些部件。重點放在探討RCP的部件,如WorkbenchWindow、Menu、ToolBar、Editor上。所以我的文章雖然簡短,但是其深度是超過了上面那些圖書的。另外,我這里還有一個優點就是有趣的實例和漂亮的截圖。

          下一篇:
            Eclipse RCP詳解(05):JFace和結構化數據

          評論

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-20 09:23 by Phnix
          支持作者繼續更新。 關于“Eclipse RCP 與Spring OSGI” 那本書,講RCP方面的東西確實太少了,花了很多精力在swt,jface控件的使用上。

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-21 10:15 by 零柒鎖業
          支持博主更新

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-22 10:09 by 魏五鎖業
          期待更新啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-22 11:43 by 萬利鎖業
          期待相關啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-22 17:18 by 電子商務文摘
          有點專業

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-23 11:36 by 鵬達鎖業
          期待更新啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-23 12:45 by 金利鎖業
          支持博主分享

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-24 09:44 by 零柒鎖業
          博主好久沒有更新了

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-24 11:00 by 萬利鎖業
          期待更新啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-25 09:55 by 零柒鎖業
          期待更新啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-25 11:10 by 金利鎖業
          期待更新啊

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-02-26 10:45 by 魏五鎖業
          支持博主分享

          # re: Eclipse RCP詳解(04):Eclipse RCP相關的學習資料及國內相關圖書點評  回復  更多評論   

          2014-12-20 20:20 by 當當爸
          Contributing.To.Eclipse這本書也不錯
          主站蜘蛛池模板: 迁安市| 遂平县| 德阳市| 麻江县| 达日县| 读书| 安宁市| 平舆县| 镇平县| 绥宁县| 张掖市| 抚顺县| 仙游县| 忻城县| 万山特区| 桐城市| 晋宁县| 渝中区| 安龙县| 红桥区| 南皮县| 黔南| 巩留县| 息烽县| 夹江县| 江西省| 卓资县| 浮山县| 堆龙德庆县| 新竹市| 拉萨市| 万州区| 馆陶县| 隆安县| 闵行区| 新泰市| 金昌市| 花莲市| 湟源县| 常熟市| 永泰县|