java 編程環(huán)境
編譯環(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ù).
編輯環(huán)境(vim) 我對(duì) ide 環(huán)境的感覺不太好. 以前沒有用過, 以后應(yīng)該也不會(huì)用. 我最喜歡的編輯環(huán)境是 vim. 它真的是一個(gè)非常強(qiáng)大的編輯器, 這一點(diǎn)已經(jīng)有 無數(shù)的人證明過了, 就不用我羅嗦了:)
使用 vim 編輯 java 文件需要兩個(gè)方面:
項(xiàng)目管理(ant) ant 是個(gè)基于 java 的構(gòu)建工具, 配置 ant 就是配置 build.xml 這個(gè) xml 文件, 配置好后, 它就會(huì)替你完成許多任務(wù), 特別有些任務(wù)很煩瑣.
我是這樣使用 ant 的.
代碼檢查(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 集成.
單元測試框架(junit, httpunit, cactus..) 程序編寫完以后就要進(jìn)行測試(這里主要指的是單元測試). 進(jìn)行單元測試是一般程序員不愿意做的事, 不過這個(gè)事情真的很有用. 這里給大家介紹幾篇文章:
調(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)試要求, 可以在這里找到它.
代碼版本控制(cvs) 代碼的版本控制十分重要, 有了這樣一個(gè)代碼庫, 硬盤突然崩掉也不怕了:) 介紹安裝使用的文章不可勝數(shù). 這里是我的安裝過程簡敘. 這里是簡單使用說明. 這里是 cvs 手冊(cè).
bug 跟蹤(Bugzilla) Bugzilla是一個(gè)bug追蹤系統(tǒng),用以管理bug提交、bug消除,不僅能降低同樣錯(cuò) 誤的重復(fù)發(fā)生,提高開效率,而且有助于項(xiàng)目管理的難度。(摘自竹筍炒肉) 更重要的, 它是一個(gè)開源軟件:) 這里是我寫的簡易安裝步驟. 這里是它的使用說明.
壓力測試(Jmeter) 軟件部署以后往往就會(huì)有執(zhí)行效率上的要求: 程序耗費(fèi)多少的系統(tǒng)資源? 需要用什么樣的服務(wù)器來支撐? 等等 使用 Jmeter 可以告訴你一些數(shù)字及圖表, 可以判斷軟件的負(fù)載能力 使用 weblogic 的 JRocket 運(yùn)行環(huán)境則能夠得到軟件運(yùn)行時(shí)對(duì)系統(tǒng)資源的使用信息.
中間工具 java 的中間工具有很多, 著名的是各種的 j2ee 容器, 各種應(yīng)用框架及各種 數(shù)據(jù)持久化方案. 這里列出一些著名的, 以便查找.
|