代碼審查是確保系統質量和用戶體驗的正式流程中的基石。這涉及到召開一個由標記編寫者、審查者和其他相關人員參加的會議,在會上提交有關材料,產生后續的代碼修改要求。簡單地說,我們鼓勵進行代碼審查,磨刀不誤砍柴工嘛。
**為啥俺要參加代碼審查涅?**
代碼審查是用于降低項目風險的戰略性時間投資。
經常地,接口開發者被要求根據線框圖或視覺構圖編寫標記。不過,有可能設計的屏幕不能輕易轉換為標記,或者轉換后質量有損失。代碼審查為在頁面投入生產之前發現并解決這些風險提供了一個機會。
**代碼審查能夠提升跨項目的整體知識水平**
既然代碼審查涉及到項目內外的成員,這有利于在整個團隊中分享技術和最佳實踐。
**代碼審查能在bug從一些模板繁衍到多個頁面之前就封殺它們**
理想情況下,代碼審查是在開發過程的早期進行的,早于頁面開始全面投入生產。當模板被團隊審查并在多個校驗工具和瀏覽器運行,潛在的bug就會冒出來。這是修復bug的理想時機。
**代碼審查給不熟悉項目的外部成員提供了發現代碼中問題的機會**
項目外部的審查者比在代碼上工作了更長時間的標記編寫者更容易發現問題。
**哪些人應該參加代碼審查?**
歸根到底,項目的前端工程主管要負責確保代碼審查遵循合適的流程。
理想情況下,一位部門主管應該作為代碼審查的主持人,除非部門主管自己正好是被審查代碼的接口開發者。在這種情況下,由一位項目經理進行主持。
審查小組應該包括至少兩位來自接口技術團隊精通開發和最佳實踐的資深成員。
**代碼審查中有哪些要求?**
在進行代碼審查之前,需要審查的模板必須整體完成開發、經過校驗、并針對項目需要用到的瀏覽器和平臺進行了測試。
部門主管 和/或 接口開發者必須在代碼審查前至少48小時 分發以下材料:
* 所有頁面代碼,相關的服務器端引用,CSS 和Javascript。這些必須有完整注釋,左側列出行號,在每個打印頁的頁腳標明文件/頁面名稱。
* 每個模板的截屏
* 如果適用,標明模板對應的URL
* 項目支持的瀏覽器和平臺的清單
* 已知問題和關注領域的清單
很典型的情況是,直到代碼審查進行之前,代碼還在不斷地修改。不幸的是,這樣就沒有足夠的時間來校驗和測試了。如果這種情況發生了,最好是重新安排代碼審查的時間以確保其效果。
另外,部門主管 和/或 接口開發者應該預定一間會議室和電話會議號碼并提供給所有參與者,因為有可能某些項目組或審查組成員不在現場。用一個小時來審查兩三個模板應該足夠了;不過,需要的時間也隨模板的大小和復雜度而不同。
在代碼審查過程中,一位部門主管 和/或 接口開發者應該主持會議,而部門主管或項目經理做記錄并分配行動事項。審查者應該在事前審閱過代碼并準備好提問或提供反饋意見。
記錄和行動事項(包括負責人)應該在代碼審查后分發給所有參與者。如果代碼審查產生了本質性的變更,或沒有完成對所有代碼的審查,就有必要安排第二次代碼審查。不過,這必須在項目組內討論以確定其可行性。