讓 Java 程式設計師更加高效的開發工具

bingguang1993發表於2018-03-09

一、常用開發工具

作為一名 Java 程式開發人員,可選擇的整合開發環境 IDE(Integrated Development Environment)非常多,這得益於 Java 是一門開源語言。

有開源免費的;有商用收費的。

如何選擇一款適合自己的整合開發環境,亦或說選擇一款符合自己專案開發需要的整合開發環境。

選擇得當能夠使得開發工作事半功倍;否則事倍而功半。

免費開源 Eclipse

Eclipse 最初是由 IBM 公司開發的替代商業軟體 Visual Age for Java 的下一代 IDE 開發環境,2001 年 11 月貢獻給開源社群,現在它由非營利軟體供應商聯盟 Eclipse 基金會(Eclipse Foundation)管理。

Eclipse 是一個開放原始碼的、基於 Java 的可擴充套件開發平臺。就其本身而言,它只是一個框架和一組服務,用於通過外掛元件構建開發環境。

幸運地是 Eclipse 附帶了一個標準的外掛集,包括 Java 開發工具(Java Development Tools,JDT)

Eclipse 是著名的跨平臺的自由整合開發環境(IDE)

最初主要用來 Java 語言開發,但是目前亦有人通過外掛使其作為其他計算機語言比如 C++、PHP、Python 等語言的開發工具。

Eclipse 的本身只是一個框架平臺,但是眾多外掛的支援使得 Eclipse 擁有其他功能相對固定的 IDE 軟體很難具有的靈活性。許多軟體開發商以 Eclipse 為框架開發自己的 IDE。

商用收費 MyEclipse

MyEclipse 是 Eclipse 的外掛,也是一款功能強大的 J2EE 整合開發環境,由 Genuitec 公司釋出,它是商用收費的。

MyEclipse 是對 Eclipse IDE 的擴充套件,利用它可以在資料庫和 JavaEE 的開發、釋出以及應用程式伺服器的整合方面極大的提高工作效率。

它是功能豐富的 JavaEE 整合開發環境,包括了完備的編碼、除錯、測試和釋出功能,完整支援 HTML、Struts、JSP、CSS、Javascript、SQL,Hibernate,Spring。

Oracle 公司免費的 NetBeans

NetBeans 是 Sun 公司(2009 年被甲骨文收購)在 2000 年創立的開放原始碼供開發人員和客戶社群的家園,旨在構建世界級的 Java IDE。

NetBeans 當前可以在 Solaris、Windows、Linux 和 Macintosh OS X 平臺上進行開發,並在 SPL(Sun 公用許可) 範圍內使用,是一個屢獲殊榮的整合開發環境。

NetBeans 包括開源的開發環境和應用平臺,NetBeans IDE 可以使開發人員利用 Java 平臺能夠快速建立 Web、企業、桌面以及移動的應用程式,NetBeans IDE 目前支援 PHP、Ruby、JavaScript、Ajax、Groovy、Grails 和 C /C + + 等開發語言。

NetBeans 專案由一個活躍的開發社群提供支援, NetBean 開發環境提供了豐富的產品文件和培訓資源以及大量的第三方外掛。

IntelliJ IDEA

IntelliJ IDEA 是一款綜合的 Java 程式設計環境,被許多開發人員和行業專家譽為市場上最好的 IDE。

它提供了一系列最實用的的工具組合:智慧編碼輔助和自動控制,支援 J2EE,Ant,JUnit,SVN 和 Git 整合,非平行的編碼檢查和創新的 GUI 設計器。

IDEA 把 Java 開發人員從一些耗時的常規工作中解放出來,顯著地提高了開發效率。具有執行更快速,生成更好的程式碼;持續的重新設計和日常編碼變得更加簡易,與其它工具的完美整合;很高的價效比等特點。

IntelliJ IDEA 以前是收費軟體,不過在 2009 年以後就開始推出了免費的社群開源版本。不過商用還是需要收費的。

Eclipse、MyEclipse、NetBeans 和 IntelliJ IDEA 的特點和適用場景:

Eclipse、MyEclipse、NetBeans 和 IntelliJ IDEA 這四個 IDE 有著不同的特性和優點,根據開發的不同可能需要選擇不同的 IDE。

在 Java 開發的每個方面,這四個 IDE 都能勝任工作,然而根據你所做的不同開發例如 Swing 開發,web 開發或者企業開發,選擇 IDE 就有所偏向。

(1)Swing 開發

如果你專門從事 Swing 開發,NetBeans 無疑是最好的選擇。

如果你沒有選擇 NetBeans 而是選擇了 Eclipse,建議使用 MyEclipse 和它的 Matisse4Eclipse 構造器。

IDEA 由於對 JGoodies Forms 的支援,所以在開發 Swing 方面與前兩者相比並不佔有優勢。

(2)JSP/Struts 開發

開發 JSP/Struts 首選的是 IDEA,接下來是 MyEclipse,然後是 NetBeans,由於缺少對內建 Struts 的支援,Eclipse 的基本版本沒有競爭優勢。

(3)JSF 開發

在開發 JSF 方面,這三個 IDE 可以說都是很好的選擇,但是 IDEA 可能會更好一點,接下來是 Eclipse/MyEclipse,最後是 NetBeans。

(4)企業開發

由於 NetBeans 對 JPA 的支援和它產生程式碼的質量以及對持久化單元合適的設定,所以在企業開發方面,NetBeans 是首選,接下來是 IDEA。

由於 Eclipse 的 Dali 專案的限制,Eclipse 可能是最後選擇的。如果放棄標準的 JPA,從事 Hibernate 開發,MyEclipse 是最好的選擇。

除了上面提到的這四款由大公司開發的 IDE 外,JAVA 開發的 IDE 還有很多,例如 Spring 基於 eclipse 推出的 STS Spring Tool Suite、小而且快的 JCreator。

但是以上最常用的 eclipse 和 IntelliJ IDEA。

國內 Java 開發人員使用的最多也是 eclipse 和 IntelliJ IDEA。筆者用的最多是 eclipse 及 Spring 基於 eclipse 推出的 STS。

二、常用介面測試工具

作為一名開發人員,完成開發工作後,單元測試及介面測試必不可少。單元測試不用說了,Java 人員幾乎都是使用 JUnit 及 JUnit 相關的測試框架。

對於介面測試呢?有什麼工具可以使用呢?在說工具之前先來了解兩個問題。

什麼是介面測試?

用來檢查各個元件的介面的測試,介面測試主要檢查外部系統與系統之間以及各個子系統之間的互動點,測試的重點在資料的傳遞上。

為什麼要做介面測試?

如果專案全部推行單元測試,時間上不允許,而介面測試是一種特殊的單元測試,覆蓋率沒有做到所謂的單元測試的百分之百。

不過覆蓋了所有的面像使用者的功能點,而且介面測試可以採用自動化 + 持續整合的方式,節約時間了成本,同時提高了效率。

java 第三方包 httpclient

如果使用 httpclient 進行介面測試,免不了開發人員還需要自己動手去編寫程式碼,這個不是首選方案。筆者也不推薦這個方案,增加了程式人員的工作強度。

Postman

Postman 是一款功能非常棒的 Chrome 擴充套件,提供功能強大的 API&HTTP 請求除錯。它可以傳送幾乎所有型別的 HTTP 請求,並可以附帶任何數量的引數和請求頭(headers)

可以說 Postman 滿足了 HTTP 介面測試的大部分功能,只有少部分的功能不被支援,比如:請求流程的控制;使得程式設計師可以在編寫一些單元測試中解脫出來。

Postman 特點:

  • 支援用例管理

  • 支援 get、post、檔案上傳、響應驗證、變數管理、環境引數管理等功能

  • 支援批量執行

  • 支援用例匯出、匯入

  • 支援雲端儲存用例(需付費)

相關文章