給JAVA設計開發新手的一些建議和意見(1)
給JAVA設計開發新手的一些建議和意見(1)[@more@] 為了給朋友同事一些設計問題上的指導,特撰寫此文,很多觀點都是從別人的文章中獲取,有些觀點肯定也有偏頗,有些觀點也僅僅是提出並沒有做詳細論述,請多拍磚,以便改正。
【概述】
-------
在工作中,作為一個程式設計師或者一個設計師,總是要設計一些函式庫或者一個框架,當然最經常的還是做專案,即使是一個專案,也會被經常改動,甚至交給別人改動。
當你做這些工作的時候,你的這些成果都是要給別人瞭解使用的,或者說給以後的你使用的,為了別人的方便或者為了自己的方便,我們要儘可能做好設計。
【放正心態,任何東西都是不斷髮展的】
----------------------------------
技術是日新月異的,每一天都有新的技術出來,正所謂"山外有山,人外有人",每一個新的輪子出來,都可能比你要設計的輪子好,所以在設計的時候,應該瞭解一下是否已經有了類似的輪子,是否要設計一個新的輪子。
即使你的輪子已經設計好了,也不好認為自己的輪子一定比別人的輪子好,雖然你的輪子可能更適合你的實際使用。
技術在不斷的發展中,你以及你的朋友/同事都在不斷進步,"士別三日,當刮目相看",所以不要認為你的水平一定比別人高,"尺有所短,寸有所長",所以別人對你的函式庫/框架提出意見,提出疑問的時候,請不要驚奇,不要反感,不要認為別人在"挑刺",也許你的函式庫/框架早就不適合當前的發展了。
態度決定一切。你的領導或許更重視這一點。
【必要的組成部分:單元測試,文件,例項,手冊etc】
--------------------------------------------
單元測試,文件,API Doc,手冊,演示程式,Change Log,Readme,build。xml等等
有一天別人使用了你設計的函式庫/框架,當你升級後,原來的專案卻不能工作了,經過一天的除錯,你終於找到了原因,原來是不小心寫錯了一個東西。
你肯定不希望上述的事情發生,那麼請你寫單元測試吧,這樣既不浪費自己的時間,也不耽誤別人的工作,何樂而不為。你花在寫單元測試的時間/帶來的樂趣和你升級後改正莫名其妙的錯誤的時間和苦惱相比,肯定更有價值。你看到單元測試的綠條,難道不感到高興嗎?!
如果你不能保證你的程式修改沒有錯誤,不要指望你的同事認為你的錯誤是可以容忍的,他們在心裡早就開始罵你了,呵呵。寫單元測試吧
看看任何一個知名的框架,都包含完善的文件,單元測試,示例程式,使用者手冊,那麼請你也包含這些吧。哦,對了,請詳細地寫好JavaDoc,它很重要。
使用你的框架/函式庫的人如果到處去找使用方法,去找某個類(但是他不知道是否有這個類),那麼說明你的文件沒有到位。如果你希望別人使用你的這個類或者功能,那麼請寫好文件,不要指望別人去讀你的原始碼然後就能理解它是幹什麼用的。
如果你做到這些,那麼你的函式庫/框架也有了"知名"的前提,難道不是嗎?如果沒有,我想是沒法讓別人更好地使用的。
對了,有了這些東西,還要有一個良好的目錄組織,這個也可以參考別的框架的組織方式。
【借鑑成熟的設計,參考已有的專案】
--------------------------------
1。要做一個新的東西,沒有想法。不要驚訝,我肯定先找一個現有的東西來借鑑。
當然前提是不要重新發明輪子,或者是你有充分條件要重新發明一個輪子。
Struts,WebWork,Spring等等都是成熟的框架,不管你使用起來是否符合你的習慣。
在你成為大師之前,你的設計思想估計前人都已經提出並實踐過了,所以要勇敢地去借鑑。"站在巨人的肩膀上"我們能更近一步。
例如我們厭倦了在訪問資料庫時使用如下的程式碼:
try
{
//your code here
}
catch(Exception e)
{
//catch Exception
}
finally
{
//must do something
}
我們就可以借鑑Spring框架的JdbcTemplate類,看看它是如何利用回撥函式來處理的。
我們使用hibernate時是不是也會使用類似上面的程式碼,那麼可以參考Spring框架的HibernateTemplate。
借鑑也是一種捷徑。
警告:借鑑但不要抄襲,借鑑程式碼要註明來源,尊重他人也是尊重自己。
【概述】
-------
在工作中,作為一個程式設計師或者一個設計師,總是要設計一些函式庫或者一個框架,當然最經常的還是做專案,即使是一個專案,也會被經常改動,甚至交給別人改動。
當你做這些工作的時候,你的這些成果都是要給別人瞭解使用的,或者說給以後的你使用的,為了別人的方便或者為了自己的方便,我們要儘可能做好設計。
【放正心態,任何東西都是不斷髮展的】
----------------------------------
技術是日新月異的,每一天都有新的技術出來,正所謂"山外有山,人外有人",每一個新的輪子出來,都可能比你要設計的輪子好,所以在設計的時候,應該瞭解一下是否已經有了類似的輪子,是否要設計一個新的輪子。
即使你的輪子已經設計好了,也不好認為自己的輪子一定比別人的輪子好,雖然你的輪子可能更適合你的實際使用。
技術在不斷的發展中,你以及你的朋友/同事都在不斷進步,"士別三日,當刮目相看",所以不要認為你的水平一定比別人高,"尺有所短,寸有所長",所以別人對你的函式庫/框架提出意見,提出疑問的時候,請不要驚奇,不要反感,不要認為別人在"挑刺",也許你的函式庫/框架早就不適合當前的發展了。
態度決定一切。你的領導或許更重視這一點。
【必要的組成部分:單元測試,文件,例項,手冊etc】
--------------------------------------------
單元測試,文件,API Doc,手冊,演示程式,Change Log,Readme,build。xml等等
有一天別人使用了你設計的函式庫/框架,當你升級後,原來的專案卻不能工作了,經過一天的除錯,你終於找到了原因,原來是不小心寫錯了一個東西。
你肯定不希望上述的事情發生,那麼請你寫單元測試吧,這樣既不浪費自己的時間,也不耽誤別人的工作,何樂而不為。你花在寫單元測試的時間/帶來的樂趣和你升級後改正莫名其妙的錯誤的時間和苦惱相比,肯定更有價值。你看到單元測試的綠條,難道不感到高興嗎?!
如果你不能保證你的程式修改沒有錯誤,不要指望你的同事認為你的錯誤是可以容忍的,他們在心裡早就開始罵你了,呵呵。寫單元測試吧
看看任何一個知名的框架,都包含完善的文件,單元測試,示例程式,使用者手冊,那麼請你也包含這些吧。哦,對了,請詳細地寫好JavaDoc,它很重要。
使用你的框架/函式庫的人如果到處去找使用方法,去找某個類(但是他不知道是否有這個類),那麼說明你的文件沒有到位。如果你希望別人使用你的這個類或者功能,那麼請寫好文件,不要指望別人去讀你的原始碼然後就能理解它是幹什麼用的。
如果你做到這些,那麼你的函式庫/框架也有了"知名"的前提,難道不是嗎?如果沒有,我想是沒法讓別人更好地使用的。
對了,有了這些東西,還要有一個良好的目錄組織,這個也可以參考別的框架的組織方式。
【借鑑成熟的設計,參考已有的專案】
--------------------------------
1。要做一個新的東西,沒有想法。不要驚訝,我肯定先找一個現有的東西來借鑑。
當然前提是不要重新發明輪子,或者是你有充分條件要重新發明一個輪子。
Struts,WebWork,Spring等等都是成熟的框架,不管你使用起來是否符合你的習慣。
在你成為大師之前,你的設計思想估計前人都已經提出並實踐過了,所以要勇敢地去借鑑。"站在巨人的肩膀上"我們能更近一步。
例如我們厭倦了在訪問資料庫時使用如下的程式碼:
try
{
//your code here
}
catch(Exception e)
{
//catch Exception
}
finally
{
//must do something
}
我們就可以借鑑Spring框架的JdbcTemplate類,看看它是如何利用回撥函式來處理的。
我們使用hibernate時是不是也會使用類似上面的程式碼,那麼可以參考Spring框架的HibernateTemplate。
借鑑也是一種捷徑。
警告:借鑑但不要抄襲,借鑑程式碼要註明來源,尊重他人也是尊重自己。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10901326/viewspace-965651/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 1024 寫給程式設計師的一些建議程式設計師
- 程式設計師也要養生,給DBA和IT同行的一些建議程式設計師
- 給新手學習MySQL的建議MySql
- Linux新手如何入門?給新手的四點建議!Linux
- 給PHP開發者的建議PHP
- #給java程式設計師的10條建議,吐血推薦!Java程式設計師
- 給國內獨立遊戲開發者的一些建議遊戲開發
- 一些Java開發人員在程式設計中常見的雷!Java程式設計
- 給迷茫的JAVA程式設計師一些中肯建議, 你還在虛度光陰嗎?Java程式設計師
- 7 個給新手 Java 開發者的提示Java
- 給新手 Java 開發者的 7 點提示Java
- 如何高效學習Java?本文給你一些建議!Java
- 給好學進取的開發者的一些建議(自學故事)
- 新手如何學習網頁設計?自我建議網頁
- 學習Java程式設計的建議Java程式設計
- 給Linux系統運維新手的四點建議Linux運維
- 給服務端小白的一些建議服務端
- 怎樣為遊戲設計新手教程?海外開發者分享了6點建議遊戲設計
- 新手錦囊:Web前端開發小白的學習建議和路線圖Web前端
- 給程式設計師“菜鳥”的6條建議程式設計師
- 如何自學程式設計及Java、上手真實開發及轉行程式設計師的建議Java行程程式設計師
- 我的wepy初始化模板和一個指南,歡迎提建議和意見
- 給初學者一些學習Python的建議Python
- 給Java開發初學者的10個學習建議,助你學習事半功倍!Java
- 給Java開發初學者的10個學習建議,助你學習事半功倍Java
- 聊聊程式設計師的職場“圍城”,給出作為過來人的一些建議程式設計師
- 《原神》——開放世界二次元遊戲的一些見解和建議二次元遊戲
- [20210113]給PB開發人員的一個建議.txt
- 給各位PHP程式設計師十點未來的建議PHP程式設計師
- 給迷茫的Java員一些中肯建議,你還在虛度光陰嗎?Java
- 給0基礎入門Linux運維新手的五個建議!Linux運維
- Java開發人員在程式設計中常見的雷!Java程式設計
- 給技術人員一些技術以外的建議
- 一個牛人給Java初學者的建議Java
- 淺談高併發和設計的一些原則(JAVA)Java
- 戰神系列戰鬥設計師:給遊戲設計師的 50 條建議遊戲設計師
- 給遊戲關卡設計的建議,如何用好引擎工具遊戲
- 程式設計漫談(二十):如何自學程式設計及Java、上手真實開發及轉行程式設計師的建議Java行程程式設計師
- 給開發人員的幾點建議:如何理解你的DBATHBAT