從本章開始,將帶領大家進入激動人心的Eclipse RCP開發之旅。本章先將經費測算系統的架子搭建起來例如菜單、工具欄、主控界面等等,至于系統各功能的實現細節,在隨后的章節中將層層剝開。為了節省篇幅,從本章開始對于大量需要導入的類,在程序代碼中將予以省略。
一、Eclipse簡介Eclipse最初是由IBM捐獻給開源社區的,目前已經發展成為人氣最旺的JavaIDE。Eclipse插件化的功能模塊吸引了無數開發者開發基于Eclipse的功能插件。事實上,Eclipse已經超越了一般JavaIDE的概念。Eclipse是一個平臺,一個開放的平臺,你可以為Eclipse添加任何你想要的功能。雖然Eclipse可以添加很多附加功能,可以編輯C/C++,可以編輯Word文件,可以開發UML等等,但是Eclipse最基本,也是最強大的功能還是JavaIDE。<br> 二、RCP簡介RCP的全稱是RichClientPlatform,可以把它看成是Eclipse的骨架,其他的插件是器官與血肉。我們可以把這個骨架拿過來填入自己的器官和血肉,這樣就創造了我們自己的“Eclipse”!使用RCP來開發Java桌面應用可以把開發的焦點轉移到系統的邏輯功能上,而不是界面上。我們自己的程序可以繼承Eclipse的風格與功能,而不用自己去編寫諸如菜單,工具條,子窗口等等的界面元素。甚至我們可以把Eclipse本身的功能插件,比如Console拿來放在自己的程序里,這樣就避免了很多重復開發。三、Eclipse組件在開發Eclipse插件(RCP可以看成是Eclipse的插件,只不過是脫離Eclipse運行的)之前,先對Eclipse的結構了解一下。
從一開始,Eclipse便包含了與ConcurrentVersionsSystem(CVS)的緊密集成,以便提供具有變更管理能力的訪問權限。現在,許多項目(特別是ApacheSoftwareFoundation運行的項目)正在使用的是另外一種變更管理系統:Subversion。本文介紹如何為使用Subversion存儲庫的項目使用Eclipse。原有的Eclipse安裝已集成了對CVS(一種流行的開放源碼變更管理系統)的支持。CVS的功能及其局限性眾所周知,但是許多小組一直在研究其他版本控制的系統,以便提供更好的伸縮性、對合并變更和分支版本的更好支持以及對二進制文件格式的更好支持。Subversion(SVN)是最受歡迎的CVS替代品,它提供了更好的性能(允許智能本地緩存和數據庫后端)、輕松而又快速的分支(branching)以及對使用CVS時常見的所有問題的應答。繼續閱讀本文,了解如何向Eclipse添加Subversion支持,以及如何通過IDE執行基本的版本控制活動。
本文分析了Eclipse中多線程程序的實現,討論了在Eclipse客戶端程序開發中應用多線程的方法和要注意的問題,同時也討論了多線程程序的一些調試和問題解決的方法。
在Web2.0大行其道的今天,有很多桌面應用程序已經運行到瀏覽器上面,這其中有Microsoft Office Live, Google Docs等等。自從Eclipse 3.0引入Rich Client Platform(后面簡稱RCP)以來,RCP應用程序得到了廣泛的應用,自然,人們期望RCP應用程序也能夠運行在瀏覽器上面,盡管這是一個挑戰,但總是有人能挑戰成功,Eclipse下面的子項目Rich Ajax Platform(后面簡稱RAP)就做到了,這篇文章就是告訴你如何用RAP將你的RCP應用程序移植到B/S架構上。
Eclipse的編輯功能非常強大,掌握了Eclipse快捷鍵功能,能夠大大提高開發效率。Eclipse中有如下一些和編輯相關的快捷鍵。
Eclipse通過wtp插件對j2ee web app的開發提供了很好的支持,flex builder plugin是基于eclipse 的一個用于開發flex 應用程序的插件,blazeds是一個用于集成flex 客戶端和j2ee server的組件,下面介紹一種方法,集成eclipse,wtp,blazeds,flex builder plugin使得可以在eclipse 的一個”dynamic web project” 中同時完成j2ee web app 的開發和flex mxml,as3的開發,并利用blazeds在flex 客戶端訪問server 端的功能.所使用的工具中,除了flex builder是一個商業產品外,其它的都是開源組件.
Eclipse RCP允許開發者使用eclipse結構風格設計彈性的可擴展的應用程序,可重用Eclipse中已存在的方法和編碼模式。俗話說,萬事開頭難。EclipseRCP入手可能會比較困難、費時。接下來我們將主要講述如何讓RCP工作安裝了
Spring2、Struts2、Hibernate3、HSQLDB搭建一個實際WEB應用環境背景。
解決方法:采用SWT中的虛擬表格技術來創建擁有大數據量的表格,解決加載速度讓人難以忍受的問題,提升加載效率。為了充分的說明問題,本文通過對比常規方法和虛擬表格技術加載2萬條數據所需的時間,來說明虛擬表格在加載大數據量時的優越表現。
MyEclipse能夠大大提高開發者的效率。但同時,由于電腦配置的原因,很多開發者在使用MyEclipse的時候,速度都不是很快,需要我們對MyEclipse進行一些必要的優化。
JDT核心(org.eclipse.jdt.core)是用于定義 Java 核心元素和 API 的插件。在開發特定于 Java 的功能部件時,總是應該將此插件列示為先決條件。JDT 核心包使您能夠訪問 Java 模型對象和無外設 Java IDE 基礎結構。
Aptana快捷鍵Aptana作為一款不錯的IDE,確實非常不錯,但用他也必須熟悉他,下面是一些它的使用的部分快捷鍵,希望對大家有用處。
擴展(Extension)是Eclipse中一個關鍵的機制,plug-in利用擴展向Eclipse平臺添加新功能。Eclipse平臺提供了一些擴展點,可以使用下列擴展點來擴展平臺基礎結構的功能。
為什么要使用SWT?SWT是IBM開發一套跨平臺的GUI開發框架。為什么IBM要創建另一種GUI呢?為什么他們不使用現有的JavaGUI框架呢?要回答這些問題,我需要回到Java的早期時代。<br><br> Sun已經創建了一套跨平臺的GUI框架AWT(AbstractWindowingToolkit)。這個AWT框架使用了本地窗口組件(nativewidgets)不過它存在LCD問題.這個LCD問題導致了它失去主要的平臺特性。換句話說,如果平臺A有窗口組件1-40而平臺B有窗口組件20-25,那么這個跨平臺的AWT框架只能提供這兩個集合的交集。 <br><br>為了解決這個問題,Sun創建了一個新的框架使用模擬窗口組件(emulatedwidgets)來代替本地窗口組件(nativewidgets)。這個方法解決了LCD問題同時提供了豐富的窗口組件,不過也產生了其他的問題。例如,Swing應用程序不再和本地程序在樣子上一致。雖然JVM有了很大的改善,但是Swing應用程序仍然存在它們本地配對物所沒有的性能問題。而且,Swing應用程序消耗了太多的內存,故不適合用于PDA和移動電話等小型設備。<br><br>IBM發現這些方法都無法滿足他們的需求。因此,IBM創建了新的GUI庫叫做SWT,它解決了AWT和Swing框架中的問題。SWT框架使用JNI訪問本地窗口組件(nativewidgets),如果一個窗口組件在主機平臺上不能獲得,那么SWT會模擬這個不能獲取的窗口組件。
MyEclipse快捷鍵匯總Alt+Shift+C修改函數結構(比較實用,有N個函數調用了這個方法,修改一次搞定)Alt+Shift+L抽取本地變量(可以直接把一些魔法數字和字符串抽取成一個變量,尤其是多處調用的時候)Alt+Shift+F把Class中的local變量變為field變量(比較實用的功能)Alt+Shift+I合并變量(可能這樣說有點不妥Inline)Alt+Shift+V移動函數和變量(不怎么常用)