你是否回顧過自己以往寫的代碼?是否有感覺他們輕一點是有點冗余或者不利於擴展性,說重一點就是你自己都感覺那是一堆垃圾代碼。
你是否曾經接手過別人遺留下的項目,看着某些動輒三五百行代碼要么注釋寫的不清不楚,有的還一個注釋都沒有,你是否有種給他兩巴掌的想法(反正我是有的,也知道自己以前寫的代碼別人拿到的時候也有這種想法)。
你是否遇見過在實現了某些功能之后發現有另一種方法可以快速的以少代碼實現相同功能?
這只是我遇到的各種情況中的幾個例子,其他還有很多。 在這些時候你就應該想到重構,不管是為了你自己或者是為了別人,你都應該重構,讓代碼清晰的解釋你的目的。
什么是重構?在不改變代碼外在行為的前提下,對既有代碼進行修改,用於改進程序內部結構。
俺還只是初窺門徑,所以重構基本都是針對代碼,不到隊設計的重構高度。任然記得有一次為了實現把Excel中的信息把各個列中的字符根據各種關鍵字導入數據庫,直接一個方法一簽多行代碼完事兒(后來那堆垃圾成了一次性的),至今仍佩服自己真乃"人才",。總是覺得自己是在害人害己。
認識到了缺點還需要去改正,所以自己慢慢的嘗試,去閱讀別人的代碼,去看書籍,總是能夠收獲多多,雖然不敢說現在的代碼怎么樣,至少比以前有了提高。
在這學習過中總結得出兩點:
1、代碼不要王大娘!一般60行為宜,最多不宜超過120行(加上空白行,俺一般習慣寫一行代碼留一行空白)!
2、代碼要有注釋,間斷解釋作用,而且每次修改代碼之后都要更新注釋。
3、命名要規范,不管變量還是方法還是類等等名稱一定能夠讓人一目了然的知道它的作用,另外排版也盡量好看點吧,別讓看着糾結。
在利用以上幾點之后個人覺得,代碼應該會好很多,再加上其他重構手法,嘿嘿,你會有種重生的感受。在此隆重推薦《重構改善既有代碼的設計》一書。