代碼質量

本文於2017年6月21號發佈在個人博客中,因爲個人博客關閉,全部遷移到CSDN,以下是正文:


今天召開了項目組例會,搞了一件非常大的事情:部門代碼質量規範!

規範

規範提了很多要求:

  • 個人級review
    • 代碼合入主幹前必須經過多個流程
      • 開發者review
      • core review
      • PM review
    • 項目組成員包括:
      • PM:負責產品層面的把關,決定某個特性是否合入版本
      • core:核心開發者,對代碼架構非常熟悉,負責技術層面的把關,決定某個實現方式是否合適
      • others:開發者、其他對該項目感興趣的羣衆,對於項目成員提交的代碼可以發表個人意見,但不影響代碼的合入
    • 代碼review工具:gerrit
    • 各角色職責:
      • PM:workflow -1 ~ +1
      • core:code-review -2 ~ +2
      • others: code-review -1 ~ +1
  • 版本級review:飛檢
    • 固定版本週期從同能力中心的飛檢資源池中找兩名非項目組成員,由項目組架構師負責功能講解,挑出高風險片段進行飛檢

醜媳婦見公婆

經過最近一段時間的CICD之旅,我逐漸明白一些事情,代碼質量提升的關鍵在於參與編寫代碼的每一個人,外在施壓效果很有限。

我舉個編寫單元測試用例的例子。早上上班,打開郵箱就看到了每日構建的報告,報告內容大致是:

startExecution_case01.....
startExecution_case02.....
startExecution_case03.....
startExecution_case04.....
stopExecution_case01.....
stopExecution_case02.....
stopExecution_case03.....
stopExecution_case04.....

xx test cases, xx failure...

再看一個,文件命名的例子。打開項目目錄樹:

project-------
  ......
  |---testCase
        |---JamesUnitCase
        |---TomUnitoCase
        ......

在諸多的代碼提交中,絕大部分提交代碼行數超過100行,打開一看,“哦,原來是一個不瞭解抽象的傢伙”。

如何提升質量

我覺得想要提升代碼質量,需要時刻記住:

  • 目標受衆是誰?這裏的目標受衆包括:代碼review的人、計算機、以及那個記性不好的自己等等
  • 目標受衆想要看到什麼?

我很喜歡一句話:你有多用心,就有多精彩!

發佈了133 篇原創文章 · 獲贊 25 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章