經驗分享:程序注釋的一些體會


         有良好的注釋習慣,不一定是合格程序員;但沒有良好注釋習慣,一定不是合格程序員。

         程序注釋,我體會比較深刻,因為我的機房收費系統重構就是因為注釋寫的不好。

         記得剛剛開始接觸編程的時候,完全不懂注釋的意義,但學習別人的代碼時,發現人家都有注釋,於是也學着用注釋點綴自己的程序,經過將近兩年的積累,我對注釋有了比較深刻的認識,接下來就與大家共享一下自己的經驗。

         前篇廢話,其實關於注釋的討論、優點、注意事項等等,網上有很多很多,本小菜在此從實際應用角度出發,分享經驗。

 

        一、注釋可以幫助理清思路。

 

        寫注釋不僅僅是關愛他人,讓別人維護起來更加輕松,實際上寫注釋對理清思路有很大幫助。

        正所謂代碼未動,注釋先行。舉個形象的例子:

        用程序表達:如何把大象裝進冰箱里?

         我們先不考慮實現細節,先用注釋勾勒出大致步驟,如下:

         //打開冰箱門

 

        //把大象放進冰箱

 

        兩步就搞定,看起來少點什么,很重要的一步,忘了關上冰箱門。

        //打開冰箱門

        

        //把大象放進冰箱

 

        //關上冰箱門

 

        這樣看起來就很不錯了,但是還缺點東西,面向對象編程,要先創建對象。

        //創建冰箱對象和大象對象

 

        //打開冰箱門

        

        //把大象放進冰箱

 

        //關上冰箱門

 

        這樣就差不多了!面向對象語言一般都有垃圾回收機制,不用手動銷毀對象。

         經過這么一個寫注釋的過程,基本理清了程序思路,避免出現邏輯混亂,又能避免出現一些低級錯誤。通過注釋,不知不覺就寫出了一段漂亮的代碼。

         什么?你認為這是個與程序無關的例子?別忘了,程序源於生活,高於生活,這個例子不就是數據庫操作的樣本嗎?

 

        二、注釋要有深度。

 

         這是個很有意思的話題,注釋沒深度有多可怕,見下圖:

        

        可見,沒有深度的注釋,無論是對自己還是對別人,都是一種傷害,無疑會給后期維護造成諸多不便,致使維護效率低下。

        圖中的注釋,完全是多余的,只是把代碼描述了一遍,對理解程序沒有任何幫助,反而會分散注意力。

        注釋,既然寫,就要寫的有深度,它應該能直接指出矛盾所在,表明意圖。比如寫成這樣://判斷返回值是否符合標記,如果不符合,將怎樣….

        因此,寫注釋也要用心,避免出現垃圾注釋。

 

        三、別忘了模塊注釋。

 

         上邊提到的所有注釋,都應該叫做局部注釋,比局部注釋范圍大點的是方法、類注釋,再大的就是模塊注釋。

         模塊注釋,從我一開始接觸編程就經常羡慕別人能寫出那么漂亮的模塊注釋,我是屬於VB啟蒙,印象最深刻的就是嗷嗷叫的老馬,VB世界的泰斗,經常使用老馬寫的模塊,看到人家的注釋,簡直就是享受。

         模塊注釋,至關重要,它基本闡述了整個模塊的信息,是模塊的宏觀描述,主要包括:版權、邏輯說明、調用說明、版本等。讓人一看就對整個模塊了然於胸,無需去讀代碼,便能直接使用。這樣模塊維護起來,無疑會讓人很舒服。

        附上一個比較全面的模塊注釋模版。

         /*************************************************

        編寫者:

        小組成員:

        模塊名稱:

        模塊功能:

        調用示例:

        依賴模塊:

        創建日期:

        版本號:

        版權所有:

        修改日期:

        修改原因:

        **********************************************/

 

         但在自己實際編程時,卻經常忘了寫,琢磨着原因可能如下:

 

        n  模塊注釋一般是模塊編寫、測試完成時才寫的,由於着急等因素,容易忽略。

        n  目前編寫的程序比較小,沒有那么轟轟烈烈,容易忘記完善模塊注釋。

 

        希望讀者能認真體會,時刻謹記模塊注釋,不要像我一樣。

        

 

        四、適當用注釋代替刪除,保留痕跡。

 

         很多情況下,代碼要經過不斷完善,最終才能成型,而在完善的過程中,可能有很多過渡代碼,按照我的習慣,太長或者不太重要的過渡代碼,直接刪除;而那些比較關鍵,價值比較高的,則用注釋保留下來,以后維護了可以提供一個參考。

         因為程序無所謂好壞,符合需求的才是最好的,目前正確的程序,不代表永遠正確,神才知道哪天會用到那些過渡代碼,如果我們適當保留,以后維護可以輕松許多。

        

         好啦,暫時就寫到這,以后有什么新的體會、心得,接着分享!

        歡迎大家多多交流!

 

附:

 

寫好程序注釋的十三條建議:http://www.cnblogs.com/iyangyuan/archive/2012/12/05/2803842.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM