在計算機開發(fā)語言的歷史中,從來沒有哪種語言象Java那樣受到如此眾多廠商的支持,有如此多的開發(fā)工具,Java菜鳥們?nèi)绯跞氪笥^園的劉姥姥,看花了眼,不知該何種選擇。的確,這些工具各有所長,都沒有絕對完美的,就算是老鳥也很難做出選擇。在本文中我簡要介紹了常見的十四種Java開發(fā)工具的特點,管中窺“器”,希望能對大家有所幫助。
1、JDK (Java Development Kit)
2、Java Workshop
3、NetBeans 與Sun Java Studio 5
4、Borland 的JBuilder
5、Oracle 的JDeveloper
6、IBM的Visual Age for Java
7、BEA 的 WebLogic Workshop
8、WebGain 的Visual Cafe for Java
9、Macromedia的JRUN
10、JCreator
11、Microsoft VJ++
12、Eclipse
13、Ant
14、IntelliJ
小結
在計算機開發(fā)語言的歷史中,從來沒有哪種語言象Java那樣受到如此眾多廠商的支持,有如此多的開發(fā)工具,Java菜鳥們?nèi)绯跞氪笥^園的劉姥姥,看花了眼,不知該何種選擇。的確,這些工具各有所長,都沒有絕對完美的,就算是老鳥也很難做出選擇。在本文中我簡要介紹了常見的十四種Java開發(fā)工具的特點,管中窺“器”,希望能對大家有所幫助。
1、JDK (Java Development Kit)
SUN的Java不僅提了一個豐富的語言和運行環(huán)境,而且還提了一個免費的Java開發(fā)工具集(JDK)。開發(fā)人員和最終用戶可以利用這個工具來開發(fā)java程序。
JDK簡單易學,可以通過任何文本編輯器(如:Windows 記事本、UltrEdit、Editplus、FrontPage以及dreamweaver等)編寫Java源文件,然后在DOS狀況下利通過javac命令將Java源程序編譯成字節(jié)碼,通過Java命令來執(zhí)行編譯后的Java文件,這能帶給DOS時代程序員美好的回憶。Java 初學者一般都采用這種開發(fā)工具。
從初學者角度來看,采用JDK開發(fā)Java程序能夠很快理解程序中各部分代碼之間的關系,有利于理解Java面向?qū)ο蟮脑O計思想。JDK的另一個顯著特點是隨著Java (J2EE、J2SE以及J2ME)版本的升級而升級。但它的缺點也是非常明顯的就是從事大規(guī)模企業(yè)級Java應用開發(fā)非常困難,不能進行復雜的Java軟件開發(fā),也不利于團體協(xié)同開發(fā)。
2、Java Workshop
Sun MicroSystems公司于1996年3月26日推出了Java WorkShop 1.0,這是業(yè)界出現(xiàn)的第一個供Internet網(wǎng)使用的多平臺開發(fā)工具,它可以滿足各公司開發(fā)Internet和Intranet網(wǎng)應用軟件的需要。Java WorkShop完全用Java語言編寫,是當今市場上銷售的第一個完全的Java開發(fā)環(huán)境,目前Java WorkShop的最性版本是3.0。Java Workshop的特點表現(xiàn)如下:
1)結構易于創(chuàng)建:在創(chuàng)建平臺中立的網(wǎng)格結構方面,Java Workshop比其他任何一種Java開發(fā)工具都要方便。
2)可視化編程:Java Workshop的可視化編程特性是很基本的。Java Workshop允許程序員重新安排這些操作,甚至可以確定觸發(fā)操作行為的過濾器。Java Workshop產(chǎn)生的模板帶有許多注釋,這對程序員是很有幫助的。
此外,Java WorkShop支持JDK1.1.3以及JavaBeans組件模型,API和語言特征增加了編譯Java應用程序的靈活性。 Java WorkShop開發(fā)環(huán)境由于完全用Java寫成,所以可移植性極好,以致于多個平臺都能支持,目前Java WorkShop支持Solaris操作環(huán)境SPARC及Intel 版)、Windows95、WindowsNT、以及HP/Ux等平臺。適合于初學者進行一些簡單的Java編程。Java WorkShop的缺點是Java Workshop中的每一個可視化對象都遲早會用到網(wǎng)格布局,這種設計方法是許多人不習慣的;Java Workdshop的調(diào)色板是較差的,僅僅能滿足絕大部分應用的基本要求。
3、NetBeans 與Sun Java Studio 5
NetBeans是開放源碼的Java集成開發(fā)環(huán)境(IDE),適用于各種客戶機和Web應用。 Sun Java Studio是Sun公司最新發(fā)布的商用全功能Java IDE,支持Solaris、Linux和Windows平臺,適于創(chuàng)建和部署2層Java Web應用和n層J2EE應用的企業(yè)開發(fā)人員使用。
NetBeans是業(yè)界第一款支持創(chuàng)新型Java開發(fā)的開放源碼IDE。開發(fā)人員可以利用業(yè)界強大的開發(fā)工具來構建桌面、Web或移動應用。同時,通過NetBeans和開放的API的模塊化結構,第三方能夠非常輕松地擴展或集成NetBeans平臺。
NetBeans3.5.1主要針對一般Java軟件的開發(fā)者,而Java One Studio5則主要針對企業(yè)做網(wǎng)絡服務等應用的開發(fā)者。Sun不久還將推出Project Rave,其目標是幫助企業(yè)的開發(fā)者進行軟件開發(fā)。NetBeans 3.5.1版本與其他開發(fā)工具相比,最大區(qū)別在于不僅能夠開發(fā)各種臺式機上的應用,而且可以用來開發(fā)網(wǎng)絡服務方面的應用,可以開發(fā)基于J2ME的移動設備上的應用等。在NetBeans 3.5.1基礎上,Sun開發(fā)出了Java One Studio5,為用戶提供了一個更加先進的企業(yè)編程環(huán)境。在新的Java One Studio5里有一個應用框架,開發(fā)者可以利用這些模塊快速開發(fā)自己在網(wǎng)絡服務方面的各種應用程序。
4、Borland 的JBuilder
Jbuilder進入了Java集成開發(fā)環(huán)境的王國,它滿足很多方面的應用,尤其是對于服務器方以及EJB開發(fā)者們來說。下面簡單介紹一下Jbuilder的特點:
1)Jbuilder支持最新的Java技術,包括Applets、JSP/Servlets、JavaBean以及EJB(Enterprise JavaBeans)的應用。
2)用戶可以自動地生成基于后端數(shù)據(jù)庫表的EJB Java類,Jbuilder同時還簡化了EJB的自動部署功能.此外它還支持CORBA,相應的向?qū)С绦蛴兄谟脩羧娴毓芾鞩DL(分布應用程序所必需的接口定義語言Interface Definition Language)和控制遠程對象。
3)Jbuilder支持各種應用服務器。Jbuilder與Inprise Application Server緊密集成,同時支持WebLogic Server,支持EJB 1.1和EJB 2.0,可以快速開發(fā)J2EE的電子商務應用。
4)Jbuilder能用Servlet和JSP開發(fā)和調(diào)試動態(tài)Web 應用。
5)利用Jbuilder可創(chuàng)建(沒有專有代碼和標記)純Java2應用。由于Jbuilder是用純Java語言編寫的,其代碼不含任何專屬代碼和標記,它支持最新的Java標準。
6)Jbuilder擁有專業(yè)化的圖形調(diào)試介面,支持遠程調(diào)試和多線程調(diào)試,調(diào)試器支持各種JDK版本,包括J2ME/J2SE/J2EE。
JBuilder環(huán)境開發(fā)程序方便,它是純的Java 開發(fā)環(huán)境,適合企業(yè)的J2EE開發(fā);缺點是往往一開始人們難于把握整個程序各部分之間的關系,對機器的硬件要求較高,比較吃內(nèi)存,這時運行速度顯得較慢。
5、Oracle 的JDeveloper
Oracle9i JDeveloper(定為9.0版,最新為10g)為構建具有J2EE功能,XML和Web services的復雜的,多層的Java應用程序提供了一個完全集成的開發(fā)環(huán)境。它為運用Oracle9i數(shù)據(jù)庫和應用服務器的開發(fā)人員提供特殊的功能和增強性能,除此以外,它也有資格成為用于多種用途Java開發(fā)的一個強大的工具。
Oracle9i JDeveloper的主要特點如下:
① 具有UML(Unified Modeling Language,一體化建模語言)建模功能。可以將業(yè)務對象及e-business應用模型化。
?、?配備有高速Java調(diào)試器(Debuger)、內(nèi)置Profiling工具、提高代碼質(zhì)量的工具“CodeCoach”等。
③ 支持SOAP(Simple Object Access Protocol)“簡單對象訪問協(xié)議”、UDDI(Universal Description, Discovery and Integration)“統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議”、WSDL(Web Services Description Language)“WEB服務描述語言”等Web服務標準。
JDeveloper 不僅僅是很好的 Java 編程工具,而且是 Oracle Web 服務的延伸,支持 Apache SOAP,以及 9iAS ,可擴充的環(huán)境和 XML 和 WSDL 語言緊密相關。Oracle9i Jdeveloper完全利用Java編寫,能夠與以前的Oracle服務器軟件以及其他廠商支持J2EE的應用服務器產(chǎn)品相兼容,而且在設計時著重針對Oracle9i,能夠無縫化跨平臺之間的應用開發(fā),提供了業(yè)界第一個完整的、集成了J2EE和XML的開發(fā)環(huán)境,允許開發(fā)者快速開發(fā)可以通過Web、無線設備及語音界面訪問的Web服務和交易應用,以往只能通過將傳統(tǒng)Java編程技巧與最新模塊化方式結合到一個單一集成的開發(fā)環(huán)境中之后才能完成J2EE應用開發(fā)生命周期管理的事實,從根本上得到改變。缺點就是對于初學者來說,較復雜,也比較難。
6、IBM的Visual Age for Java
Visual Age for Java是一個非常成熟的開發(fā)工具,它的特性以于IT開發(fā)者和業(yè)余的Java編程人員來說都是非常用有用的。它提供對可視化編程的廣泛支持,支持利用CICS連接遺傳大型機應用,支持EJB的開發(fā)應用,支持與Websphere的集成開發(fā),方便的bean創(chuàng)建和良好的快速應用開發(fā)(RAD)支持和無文件式的文件處理。
IBM為建設Web站點所推出的WebSphere Studio Advanced Edition及其包含的VisualAge for Java Professional Edition軟件已全面轉(zhuǎn)向以Java為中心,這樣,Java開發(fā)人員對WebSphere全套工具的感覺或許會好了許多。Studio所提供的工具有:Web站點管理、快速開發(fā) JDBC頁向?qū)С绦?、HTML編輯器和HTML語法檢查等。這確實是個不錯的HTML站點頁面編輯環(huán)境。Studio和VisualAge集成度很高,菜單中提供了在兩種軟件包之間快速移動代碼的選項。這就讓使用Studio的Web頁面設計人員和使用VisualAge的Java程序員可以相互交換文件、協(xié)同工作。
Visual Age for Java支持團隊開發(fā),內(nèi)置的代碼庫可以自動地根據(jù)用戶做出改動而修改程序代碼,這樣就可以很方便地將目前代碼和早期版本做出比較。與Visual Age緊密結合的Websphere Studio本身并不提供源代碼和版本管理的支持,它只是包含了一個內(nèi)置文件鎖定系統(tǒng),當編輯項目的時候可以防止其他人對這些文件的錯誤修改,軟件還支持諸如Microsoft Visual SourceSafe這樣的第三方源代碼控制系統(tǒng)。Visual Age for Java完全面向?qū)ο蟮某绦蛟O計思想使得開發(fā)程序非??焖佟⒏咝?。你可以不編寫任何代碼就可以設計出一個典型的應用程序框架。Visual Age for Java作為IBM電子商務解決方案其中產(chǎn)品之一,可以無縫地與其他IBM產(chǎn)品,如WebSphere、DB2融合, 迅速完成從設計、開發(fā)到部署應用的整個過程。
Visual Age for Java獨特的管理文件方式使其集成外部工具非常困難,你無法讓Visual Age for Java與其他工具一起聯(lián)合開發(fā)應用。
7、BEA 的 WebLogic Workshop
BEA WebLogic Workshop是一個統(tǒng)一、簡化、可擴展的開發(fā)環(huán)境,使所有的開發(fā)人員都能在 BEA WebLogic Enterprise Platform之上構建基于標準的企業(yè)級應用,從而提高了開發(fā)部門的生產(chǎn)力水平,加快了價值的實現(xiàn)。
WebLogic Workshop除了提供便捷的Web服務之外,它能夠用于創(chuàng)建更多種類的應用。作為整個BEA WebLogic Platform的開發(fā)環(huán)境。不管是創(chuàng)建門戶應用、編寫工作流、還是創(chuàng)建Web應用,Workshop 8.1都可以幫助開發(fā)人員更快更好地完成。
WebLogic Workshop的主要特點如下:
?、?使 J2EE 開發(fā)切實可行,提高開發(fā)效率
BEA WebLogic Workshop 使開發(fā)人員遠離 J2EE 內(nèi)在的復雜性,集中精力專注業(yè)務邏輯,無須操心單調(diào)乏味的基礎結構代碼。這種創(chuàng)新意味著,已被企業(yè)驗證的 J2EE 的強大功能,最終被大多數(shù)不熟悉 Java 和 J2EE 的應用開發(fā)人員所掌握,從而使 IT 部門的工作效率提高一個數(shù)量級。
可視化設計器以及直觀的概念,如事件、屬性和控件等,實現(xiàn)了基于事件的開發(fā)。Workshop 簡化的程序設計模型,使開發(fā)人員不必掌握復雜的 J2EE API 和面向?qū)ο蟮某绦蛟O計原理。所有開發(fā)人員,包括 J2EE 專家和具有可視化和過程化語言技能的應用開發(fā)人員在內(nèi),都可以共同工作在 BEA WebLogic Enterprise Platform 之上。Workshop 的可視化開發(fā)環(huán)境,創(chuàng)建帶有代碼注釋的標準 Java 文件,用來說明由運行時框架實施的企業(yè)級需求。J2EE 和其他高級開發(fā)人員,借助功能強大的代碼編輯功能,可以訪問 Java 源代碼,從而彌補了可視化設計器的不足。
?、?構建企業(yè)級應用
通過在可伸縮、安全可靠的企業(yè)級架構上實施各種應用,BEA WebLogic Workshop 大大降低了開發(fā)風險。而且,所有應用的創(chuàng)建都使用標準的 J2EE 組件,既保護了您的技術投資,又保持了最大的靈活性。
BEA WebLogic Workshop 運行框架,是統(tǒng)一整個架構的匯聚層,使單一、簡化的程序設計模型擴展到所有的 BEA WebLogic Enterprise Platform 應用類型。通過解釋設計時創(chuàng)建的注釋代碼,運行時框架可以實現(xiàn)必要的 J2EE 組件,并且提取出與 J2EE 應用開發(fā)有關的所有底層細節(jié)。
?、?降低 IT 復雜性
BEA WebLogic Workshop 提供各種 Java 控件,使得與 IT 資源的連接更輕而易舉。另外,在構建任何 BEA WebLogic Platform 的應用中,Java 控件不僅可擴展而且完全相同。這種強大、有效的方法能夠:降低 IT 技術的復雜性,優(yōu)化信息的可用性,推動包含'最佳業(yè)務方案'的可重用服務的開發(fā),使開發(fā)人員能以更低的成本、更短的時間實現(xiàn)更大的產(chǎn)出。
利用 BEA WebLogic Workshop,任何開發(fā)人員都能以最大的生產(chǎn)效率,構建各種 Web 服務、Web 應用、門戶和集成項目。BEA WebLogic Workshop是BEA的產(chǎn)品戰(zhàn)略核心,它幫助客戶接觸和利用面向服務架構(SOA)的強大功能。BEA Weblogic Workshop 8.1極大簡化了當前實際企業(yè)集成環(huán)境中企業(yè)級應用和服務的構建,并成為全面支持關鍵企業(yè)級應用(如異步、真正松耦合和粗粒度消息傳送等)的自然選擇。它的缺點就是過于復雜,對于初學者來說,理解起來較為困難。
8、WebGain 的Visual Cafe for Java
Visual Cafe 是只能在Symantec公司的Java虛擬機、Netscape公司的Java虛擬機和Microsoft虛擬機上工作的調(diào)試器。這對于開發(fā)者來講是一個重要的特性,因為用戶開發(fā)的Java代碼中的許多軟件bug就可能中會在某種特定的虛擬機上起作用。
在修改后進行編譯基繼續(xù)進行調(diào)試時,Visual Cafe會自動將文件存盤,使用Visual Cafe創(chuàng)建的原生應用具有許多特點。除了明顯的速度提高之外,Symantec使類庫的二進制方式比正常的JDK小Visual Cafe為所指定的關系自動生成或更新必要的Java代碼。利用Visual Cafe,用戶可以從一個標準對象數(shù)據(jù)庫中集合完整的Java應用程序和Applet,而不必再編寫源代碼。Visual Cafe還提供了一個擴充的源代碼開發(fā)工具集?!?br>
Visual Cafe綜合了Java軟件的可視化源程序開發(fā)工具,它允許開發(fā)人員在可視化視圖和源視圖之間進行有效地轉(zhuǎn)換。在可視化視圖中進行的修改立即反映在源代碼中。對源代碼的改變自動更新可視化視圖。
Visual Cafe具有許多源文件方面的特性,如全局檢索和替換。絕大多數(shù)Java開發(fā)工具的文獻的問題在于簡單地挨個介紹開發(fā)工具的每部分組件,但用戶在開應用時還需要一個面向任務的手冊,利用這個手冊你可以不必知道工具每一部分的特定功能就可以開始創(chuàng)建自己的應用。Visual Cafe提供了非常全面的用戶指南,它對最開始的安裝到創(chuàng)建第一個Java應用和Applet都提供了全面的幫助,Visual Cafe將自動生成所指明關系的必要Java代碼。Visual Cafe可以在Windows 95和Windows NT平臺下運行,Symantec公司為Java開發(fā)工作提供一個在Macintosh操作系統(tǒng)下可以運行的RAD工具。Visual Cafe編譯器速度很快,在國際化支持方面比較突出;缺點就是對于初學者來說,較復雜,也比較難。
9、Macromedia的JRUN
Macromedia公司的JRun是一個具有最廣闊適用性的Java引擎,用于開發(fā)及實施由Java Servlets和JavaServer Pages編寫的服務器端Java應用。JRun是第一個完全支持JSP 1.0 規(guī)格書的商業(yè)化產(chǎn)品,全球有超過80,000名開發(fā)人員使用JRun在他們已有的Web服務器上添加服務器端Java的功能。其中Web服務器包括了Microsoft IIS,Netscape Enterprise Server,Apache等。
JRun是開發(fā)實施服務器端Java的先進引擎。如果我們希望在我們的Web應用中添加服務器端Java功能,那么JRun將成為我們的正確選擇。
JRun目前有3個版本,它是第一個支持Java Server Pages(JSP)規(guī)格書1.0的商業(yè)化產(chǎn)品。JSP是一種強大的服務器端技術,它是用于創(chuàng)建復雜Web應用的一整套快速應用開發(fā)系統(tǒng)。JRun可以使我們開始開發(fā)并測試Java應用。它最多接受5個并發(fā)的連接并且包括全部Java Servlet API,支持JavaServer Pages(JSP),支持所有主要的Web servers和計算機平臺。 JRun Pro能夠在生產(chǎn)環(huán)境下承受大訪問量的負載,幫助我們實施應用、服務或Web站點(包括內(nèi)聯(lián)網(wǎng))。JRun Pro 支持無限量并發(fā)式連接運行多個Java虛擬機,包括多個并發(fā)的Java虛擬機(JVM)。提供一個遠程管理applet以及一個遠程可再分布式的管理applet。JRun Pro Unlimited包括了所有JRun Pro的功能,除次以外,還可以運行無限量的,并發(fā)的JVM。
JRun依靠其內(nèi)置的JRun Web Server可以單獨運行。使用服務器端Java,用戶可以開發(fā)出復雜的商業(yè)應用系統(tǒng)。最重要的一點是,由于servlets的平臺獨立性,以及更加簡單的開發(fā)、更快速的實施、更經(jīng)濟的維護成本,它是CGI(Common Gateway Interface)或Perl scripts的極佳的替代產(chǎn)品。缺點就是對于初學者來說,較復雜,也比較難。
10、JCreator
JCreator 是一個Java程序開發(fā)工具,也是一個Java集成開發(fā)環(huán)境(IDE)。無論你是要開發(fā)Java應用程序或者網(wǎng)頁上的Applet元件都難不倒它。在功能上與Sun公司所公布的JDK等文字模式開發(fā)工具相較之下來得容易,還允許使用者自訂義操作窗口界面及無限Undo/Redo等功能。
JCreator為用戶提供了相當強大的功能,例如項目管理功能,項目模板功能,可個性化設置語法高亮屬性、行數(shù)、類瀏覽器、標簽文檔、多功能編繹器,向?qū)Чδ芤约巴耆勺远x的用戶界面。通過JCreator,我們不用激活主文檔而直接編繹或運行我們的JAVA程序。
JCreator能自動找到包含主函數(shù)的文件或包含Applet的Html文件,然后它會運行適當?shù)墓ぞ摺T贘Creator中,我們可以通過一個批處理同時編繹多個項目。JCreator的設計接近Windows界面風格,用戶對它的界面比較熟悉。其最大特點是與我們機器中所裝的JDK完美結合,是其它任何一款IDE所不能比擬的。它是一種初學者很容易上手的java開發(fā)工具,缺點是只能進行簡單的程序開發(fā),不能進行企業(yè)J2EE的開發(fā)應用。
11、Microsoft VJ++
Visual J++ 是Microsoft 公司推出的可視化的Java 語言集成開發(fā)環(huán)境(IDE),為Java 編程人員提供了一個新的開發(fā)環(huán)境,是一個相當出色的開發(fā)工具。無論集成性、編譯速度、調(diào)試功能、還是易學易用性,都體現(xiàn)了Microsoft 的一慣風格。Visual J++ 具有下面的特點:
1)Visual J++ 把Java 虛擬機(JVM)作為獨立的操作系統(tǒng)組件放入Windows,使之從瀏覽器中獨立出來。
2)Microsoft 的應用基本類庫(AFC,Application Foundation Class Library)對SUN 公司的JDK 作了擴展,使應用基本類庫更加適合在Windows 下使用。
3) Visual J++ 的調(diào)試器支持動態(tài)調(diào)試,包括單步執(zhí)行、設置斷點、觀察變量數(shù)值等。
4) Visual J++ 提供了一些程序向?qū)?Wizards)和生成器(Builders),它們可以方便地幫助用戶快速地生成Java 程序,幫助你在自己的工程中創(chuàng)建和修改文件。
5) Visual J++ 界面友好,其代碼編輯器具有智能感知、聯(lián)機編譯等功能,使程序編寫十分方便。Visual J++ 中建立了Java 的WFC,這一新的應用程序框架能夠直接訪問Windows 應用程序接口(API),使你能夠用Java 語言編寫完全意義上的Windows 應用程序。
6)Visual J++ 中表單設計器的快速應用開發(fā)特性使用WFC 創(chuàng)建基于表單的應用程序變得輕松、簡單。通過WFC 可以方便地使用ActiveX 數(shù)據(jù)對象(ADO,ActiveX Data Objects)來檢索數(shù)據(jù)和執(zhí)行簡單數(shù)據(jù)的綁定。通過在表單設計器中使用ActiveX 數(shù)據(jù)對象,可以快速地在表單中訪問和顯示數(shù)據(jù)。
Visual J++能結合微軟的一貫的編程風格,很方便進行Java 的應用開發(fā),但它的移植性較差,不是純的Java 開發(fā)環(huán)境。
12、Eclipse
Eclipse是一種可擴展的開放源代碼IDE。2001年11月,IBM公司捐出價值4,000萬美元的源代碼組建了Eclipse聯(lián)盟,并由該聯(lián)盟負責這種工具的后續(xù)開發(fā)。集成開發(fā)環(huán)境(IDE)經(jīng)常將其應用范圍限定在“開發(fā)、構建和調(diào)試”的周期之中。為了幫助集成開發(fā)環(huán)境(IDE)克服目前的局限性,業(yè)界廠商合作創(chuàng)建了Eclipse平臺。Eclipse允許在同一IDE中集成來自不同供應商的工具,并實現(xiàn)了工具之間的互操作性,從而顯著改變了項目工作流程,使開發(fā)者可以專注在實際的嵌入式目標上。
Eclipse框架的這種靈活性來源于其擴展點。它們是在XML中定義的已知接口,并充當插件的耦合點。擴展點的范圍包括從用在常規(guī)表述過濾器中的簡單字符串,到一個Java類的描述。任何Eclipse插件定義的擴展點都能夠被其它插件使用,反之,任何Eclipse插件也可以遵從其它插件定義的擴展點。除了解由擴展點定義的接口外,插件不知道它們通過擴展點提供的服務將如何被使用。
利用Eclipse,我們可以將高級設計(也許是采用UML)與低級開發(fā)工具(如應用調(diào)試器等)結合在一起。如果這些互相補充的獨立工具采用Eclipse擴展點彼此連接,那么當我們用調(diào)試器逐一檢查應用時,UML對話框可以突出顯示我們正在關注的器件。事實上,由于Eclipse并不了解開發(fā)語言,所以無論Java語言調(diào)試器、C/C++調(diào)試器還是匯編調(diào)試器都是有效的,并可以在相同的框架內(nèi)同時瞄準不同的進程或節(jié)點。
Eclipse的最大特點是它能接受由Java開發(fā)者自己編寫的開放源代碼插件,這類似于微軟公司的Visual Studio和Sun微系統(tǒng)公司的NetBeans平臺。Eclipse為工具開發(fā)商提供了更好的靈活性,使他們能更好地控制自己的軟件技術。Eclipse聯(lián)盟已經(jīng)宣布將在2004年中期發(fā)布其3.0版軟件。這是一款非常受歡迎的java開發(fā)工具,這國內(nèi)的用戶越來越多,實際上實用它java開發(fā)人員是最多的。缺點就是較復雜,對初學者來說,理解起來比較困難。
13、Ant
Another Neat Tool(Ant)是一種基于Java的build工具。理論上來說,它有些類似于(Unix)C中的make ,但沒有make的缺陷。因為Ant的原作者在多種(硬件)平臺上開發(fā)軟件時,無法忍受這些工具的限制和不便。類似于make的工具本質(zhì)上是基于shell(語言)的:他們計算依賴關系,然后執(zhí)行命令(這些命令與你在命令行敲的命令沒太大區(qū)別)。這就意味著你可以很容易地通過使用OS特有的或編寫新的(命令)程序擴展該工具;然而,這也意味著你將自己限制在了特定的OS,或特定的OS類型上,如Unix。Ant就不同了。與基于shell命令的擴展模式不同,Ant用Java的類來擴展。(用戶)不必編寫shell命令,配置文件是基于XML的,通過調(diào)用target樹,就可執(zhí)行各種task。每個task由實現(xiàn)了一個實現(xiàn)了特定Task接口的對象來運行。
Ant支持一些可選task,一個可選task一般需要額外的庫才能工作。可選task與Ant的內(nèi)置task分開,單獨打包。這個可選包可以從你下載Ant的同一個地方下載。ANT本身就是這樣一個流程腳本引擎,用于自動化調(diào)用程序完成項目的編譯,打包,測試等。除了基于JAVA是平臺無關的外,腳本的格式是基于XML的,比make腳本來說還要好維護一些。Ant是Apache提供給Java開發(fā)人員的構建工具,它可以在Windows OS和Unix OS下運行,它不僅開放源碼并且還是一個非常好用的工具。Ant是Apache Jakarta中一個很好用的Java開發(fā)工具,Ant配置文件采用XML文檔編寫,所以Java程序員對其語法相當熟悉,Ant是專用于Java項目平臺,能夠用純Java來開發(fā),它能夠運行于Java安裝的平臺,即體現(xiàn)了它的跨平臺功能。它的缺點顯示執(zhí)行結果只能是DOS字符界面,不能進行復雜的java程序開發(fā)。
14、IntelliJ
Intellij IDEA是一款綜合的Java 編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽為市場上最好的IDE。它提供了一系列最實用的的工具組合:智能編碼輔助和自動控制,支持J2EE,Ant,JUnit和CVS集成,非平行的編碼檢查和創(chuàng)新的GUI設計器。IDEA把Java開發(fā)人員從一些耗時的常規(guī)工作中解放出來,顯著地提高了開發(fā)效率。具有運行更快速,生成更好的代碼;持續(xù)的重新設計和日常編碼變得更加簡易,與其它工具的完美集成;很高的性價比等特點。在4.0版本中支持Generics,BEA WebLogic集成,改良的CVS集成以及GUI設計器。
IntelliJ IDEA能盡可能地促進程序員的編程速度。它包括了很多輔助的功能,并且與Java結合得相當好。不同的工具窗口圍繞在主編程窗口周圍,當鼠標點到時即可打開,無用時也可輕松關閉,使用戶得到了最大化的有效屏幕范圍。以技術為導向的IDEA集成了調(diào)試器,支持本地和遠程的調(diào)試,即使我們需要修改一些設置上的東西使我們的工作順利進展。另外,它還提供了通常的監(jiān)視,分步調(diào)試以及手動設置斷點功能,在這種斷點模式下,我們可以自動地在斷點之外設置現(xiàn)場訪問,甚至可以瀏覽不同的變量的值。IDE支持多重的JVM設置,幾個編譯程序和Ant建造系統(tǒng),并且,它使得設置多重的自定義的類途徑變得簡單。
IntelliJ Idea是一個相對較新的Java IDE。它是Java開發(fā)環(huán)境中最為有用的一個。高度優(yōu)化的IntelleJ Idea使普通任務變得相當容易,Idea支持很多整合功能,更重要的使它們設計的好容易使用。Idea支持XML中的代碼實現(xiàn),Idea同時還會校正XML,Idea支持JSP的結構。作用于普通Java代碼的眾多功能同樣適用于JSP(比如整合功能),同時支持JSP調(diào)試;支持EJB,盡管它不包括對個別應用服務器的特殊支持。Idea支持Ant建立工具,不僅是運行目標它還支持編譯與運行程序前后運行目標,另外也支持綁定鍵盤快捷鍵。在編輯一個Ant建立XML文件時,Idea還對組成Ant工程的XML部分提供支持。IntelliJ IDEA 被稱為是最好的JAVA IDE開發(fā)平臺,這套軟件就是以其聰明的即時分析和方便的 refactoring 功能深獲大家所喜愛。缺點是較復雜,對初學者來說,理解起來比較困難。
小結
現(xiàn)在常用的Java項目開發(fā)環(huán)境有:JBuilder、VisualAge for Java、Forte for Java, Visual Cafe、Eclipse、NetBeans IDE、JCreator +J2SDK、jdk+記事本、EditPlus+ J2SDK等等。一般開發(fā)J2EE項目時都需要安裝各公司的應用服務器(中間件)和相應的開發(fā)工具,在使用這些開發(fā)工具之前,我們最好能熟知這些軟件的優(yōu)點和缺點,以便根據(jù)實際情況選擇應用。編程工具只是工具,為了方便人們工作而開發(fā)的,各有特點,因此,選工具主要的依據(jù)自己將要從事的領域是什么,而不是盲目的認為那種工具好,那種工具不好。最后希望大家都能找到自己合適的java 開發(fā)工具。
您可能感興趣的文章:- Java開發(fā)工具IntelliJ IDEA安裝圖解
- Java程序員新手老手常用的八大開發(fā)工具
- 分享15款Java程序員必備的開發(fā)工具
- Java使用Hutool實現(xiàn)AES、DES加密解密的方法
- java項目中使用 Lombok遇到的問題小結
- 推薦兩款java開發(fā)實用工具 hutool 和 lombok