新人的編程習慣與原則:代碼是寫給人看的

來源:互聯網
上載者:User

  編程規範的目的是讓代碼更容易閱讀,更容易維護,”代碼是寫給人看的”這個觀點應該是寫代碼的基本原則。

  1、命名規則:最好變數命名長度為6-15個字母之間,明確地表達出每個變數的意思,不要使用歧義單詞或者生僻單詞,方法命名遵循同樣的規則,最好用動詞表示,譬如Set開頭表示設定、Match表示匹配等

  2、方法長度:盡量使用短的方法體,一個方法體裡面的程式碼最好不要超過80行,超過就應該考慮把裡面獨立的內容提取放到另一個方法裡面(也就是所謂的重構)

  3、參數個數:參數個數不要太多,如果超過7個參數,可以考慮使用對象進行封裝進行傳遞

  4、邏輯判斷:一個方法裡面不要嵌套太多的邏輯判斷,超過三層(理論上五層)的判斷就可以考慮把其中的一部分獨立成新方法調用

  5、生命週期:盡量縮短變數的存活周期,不是必須使用盡量不要使用全域變數

  6、變數跨度:變數聲明定義開始到第一次使用該變數的程式碼之間的行距儘可能短

  7、字面常量:使用某類型的某個值作為參數(譬如:int status=1,string returnType=”list”等),盡量不要使用這樣的參數,原因有二:字面常量不易於閱讀;字面常量不方便修改,解決方案為定義全域可用的全域常量(命名參照1)

  8、字串拼接:需要通過迴圈進行字串拼接的,盡量使用StringBuilder變數來拼接,而不是使用string的”+”進行拼接,對於較長的字串可以使用String.Format()方法進行拼接, string.contact()是”+”的完整寫法

  9、記憶體回收:在操作非託管對象(如流操作)的時候盡量使用using(),譬如 using (StringWriter sw = new StringWriter(sb)){},不論在過程中是否發生異常,對象sw會在改程式段的最後自動調用sw.close()方法,這樣能防止漏寫,讓程式自動回收處理。

  10、異常處理:不要用TryCatch來保證資料的轉換是否正確(譬如把Convert.ToInt32(“aaa”)這樣的錯誤語句放到 TryCatch裡捕獲),因為捕獲異常是非常耗費效能的,將會是正常程式耗時的倍數級。每個主方法都應該用TryCatch包起來,被調用的方法出現異常不及時處理則不要用TryCatch包起來。

  11、關於注釋:注釋不是程式的必要組成部分,好的命名可以省去不必要的注釋,對於難懂的邏輯方法才有必要注釋。

  12、關於裝箱:對於已知類型的轉換最好顯示轉換,否者CLR會自動給你進行轉換,譬如 int tempNum=5;string tempStr=”aaa”+tempNum.ToString() 要比string tempStr=”aaa”+tempNum好,在傳參過程中裝箱最為頻繁,最好的解決方案是使用泛型。

  13、代碼格式:普通的縮排可以考慮vs內建的快捷功能,快捷操作為 Ctrl+E+D,對於一行代碼的長度最好是不要超過80個英文字母(普通A4紙的寬度)

  由於經驗太少,總結的不一定正確,也不夠全面,還請大牛指導

  文章來源:部落格園

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.