java 編程環(huán)境

  1. 編譯環(huán)境(jdk)
    編譯環(huán)境沒有什么可講的, 我只用過 sun jdk , 不知道其他的編譯器用起來是什么感覺.
    有興趣的朋友可以用用其他的編譯器, 再來分享自己的經(jīng)驗(yàn).

    需要注意的是有時(shí)候你會(huì)需要用混淆器來編譯項(xiàng)目, 由于 class 代碼比較容易
    被反編譯為 java 代碼, 為了保護(hù)自己(或公司)的果實(shí), 有時(shí)候需要使用這種
    工具. (當(dāng)然對(duì)于開源項(xiàng)目就完全不必要了:))

    提到了混淆器當(dāng)然就要提反編譯器了, 最著名的應(yīng)該就是 jad 了吧. 假如你
    想研究別人的代碼卻又得不到源碼時(shí), 這個(gè)工具還是非常不錯(cuò)的.

    另外, 蔡學(xué)鏞先生的"java夜未眠"中有篇文章: java 相關(guān)的編譯技術(shù).

  2. 編輯環(huán)境(vim)
    我對(duì) ide 環(huán)境的感覺不太好. 以前沒有用過, 以后應(yīng)該也不會(huì)用.
    我最喜歡的編輯環(huán)境是 vim. 它真的是一個(gè)非常強(qiáng)大的編輯器, 這一點(diǎn)已經(jīng)有
    無數(shù)的人證明過了, 就不用我羅嗦了:)

    使用 vim 編輯 java 文件需要兩個(gè)方面:

    • 熟練使用 vim 編輯普通的文本文件
      不熟悉的朋友可以從這篇文章中獲得一些技巧.

    • 在 vim 里面使用特殊技巧支持 java 文件的編輯.
      不熟悉的朋友可以從這篇文章中獲得一些經(jīng)驗(yàn).

  3. 項(xiàng)目管理(ant)
    ant 是個(gè)基于 java 的構(gòu)建工具, 配置 ant 就是配置 build.xml 這個(gè) xml 文件,
    配置好后, 它就會(huì)替你完成許多任務(wù), 特別有些任務(wù)很煩瑣.

    我是這樣使用 ant 的.

  4. 代碼檢查(checkstyle)
    程序員一般都有自己的編碼風(fēng)格, 但是現(xiàn)在是一個(gè)強(qiáng)調(diào)團(tuán)隊(duì)而不是英雄的時(shí)代, 所以
    代碼風(fēng)格的一致性是非常重要的, 我們免不了要查看別人的代碼, 自己的代碼也免
    不了要給別人查看. 至少, 在同一個(gè)團(tuán)隊(duì)中能保證代碼的一致性, 這樣會(huì)讓我們?cè)谔幚?br />任意代碼時(shí)都感覺是自己寫的一樣. checkstyle 幫我們實(shí)現(xiàn)了這一點(diǎn), 只要你在編碼
    時(shí)堅(jiān)持用它來檢查一下.

    ant 的使用文章中提到了如何與 checkstyle 集成.

  5. 單元測試框架(junit, httpunit, cactus..)
    程序編寫完以后就要進(jìn)行測試(這里主要指的是單元測試).
    進(jìn)行單元測試是一般程序員不愿意做的事, 不過這個(gè)事情真的很有用.
    這里給大家介紹幾篇文章:

  6. 調(diào)試環(huán)境(JSwat)
    測試失敗后往往需要調(diào)試看看了. 上次漏掉了這個(gè)部分, 其實(shí)對(duì)于調(diào)試部分我沒有
    太多的經(jīng)驗(yàn), 以前的調(diào)試大部分建立在輸出的基礎(chǔ)上完成的.
    不過在調(diào)試過程不容忽視, 有一個(gè)開源的軟件: JSwat 能夠滿足大部分的調(diào)試要求,
    可以在這里找到它.

  7. 代碼版本控制(cvs)
    代碼的版本控制十分重要, 有了這樣一個(gè)代碼庫, 硬盤突然崩掉也不怕了:)
    介紹安裝使用的文章不可勝數(shù).
    這里是我的安裝過程簡敘.
    這里是簡單使用說明.
    這里是 cvs 手冊(cè).

  8. bug 跟蹤(Bugzilla)
    Bugzilla是一個(gè)bug追蹤系統(tǒng),用以管理bug提交、bug消除,不僅能降低同樣錯(cuò)
    誤的重復(fù)發(fā)生,提高開效率,而且有助于項(xiàng)目管理的難度。(摘自竹筍炒肉)
    更重要的, 它是一個(gè)開源軟件:)
    這里是我寫的簡易安裝步驟.
    這里是它的使用說明.

  9. 壓力測試(Jmeter)
    軟件部署以后往往就會(huì)有執(zhí)行效率上的要求:
    程序耗費(fèi)多少的系統(tǒng)資源? 需要用什么樣的服務(wù)器來支撐? 等等
    使用 Jmeter 可以告訴你一些數(shù)字及圖表, 可以判斷軟件的負(fù)載能力
    使用 weblogic 的 JRocket 運(yùn)行環(huán)境則能夠得到軟件運(yùn)行時(shí)對(duì)系統(tǒng)資源的使用信息.

  10. 中間工具
    java 的中間工具有很多, 著名的是各種的 j2ee 容器, 各種應(yīng)用框架及各種
    數(shù)據(jù)持久化方案. 這里列出一些著名的, 以便查找.

    工具資源
    JBossJBoss
    ResinResin
    TomcatTomcat
    Struts中文專題
    CocoonCocoon
    Spring中文論壇
    Hibernate中文論壇