
成都小程序開發(fā)已經(jīng)提到了業(yè)務(wù)和敏捷方法學(xué)中的精益啟動(dòng)方法,它們都專注于測試(提供的假設(shè)或編寫的代碼)。盡管質(zhì)量保證通常意味著檢查編譯后的產(chǎn)品或服務(wù)是否符合驗(yàn)收標(biāo)準(zhǔn),功能正常并允許重現(xiàn)以前設(shè)計(jì)的用例,但軟件開發(fā)過程還包括代碼審查程序。讓我們多加注意。
盡管設(shè)計(jì)師,營銷人員和項(xiàng)目經(jīng)理的工作很少受到其他同事的檢查,但是開發(fā)人員的工作需要不斷的精神努力,因此不可能帶來完美的結(jié)果。那么,如何以最有效的方式查找并修復(fù)代碼中的小錯(cuò)誤呢?在這里,代碼審查似乎比質(zhì)量保證團(tuán)隊(duì)的工作更有效。
在“代碼審查”過程云集其他開發(fā)人員和QA有時(shí)專家,誰一起使用預(yù)定義的方法來逐行讀取代碼行,然后檢查是否有瑕疵,堅(jiān)持編碼,并與整體方案設(shè)計(jì)評論標(biāo)準(zhǔn)和一致性。
將代碼審查嚴(yán)格定義為日常編程工作流的一部分,將為團(tuán)隊(duì)帶來一些好處。
1.在代碼中發(fā)現(xiàn)的錯(cuò)誤類型,安全性錯(cuò)誤,體系結(jié)構(gòu)錯(cuò)誤和業(yè)務(wù)邏輯缺陷之類的錯(cuò)誤比已在產(chǎn)品中被質(zhì)量保證人員發(fā)現(xiàn)的錯(cuò)誤更容易,更容易修復(fù)。因此,代碼審查可以節(jié)省大量時(shí)間,并最終節(jié)省金錢,尤其是在其他情況下,只有在產(chǎn)品發(fā)布之后才能發(fā)現(xiàn)錯(cuò)誤,這尤其如此。
2.代碼審查是開發(fā)人員之間進(jìn)行交流的一種形式,因此是一種幫助初級開發(fā)人員通過學(xué)習(xí)其故障點(diǎn)和高級開發(fā)人員發(fā)現(xiàn)常見錯(cuò)誤來快速提高其熟練程度的好方法。
3.當(dāng)審閱者學(xué)習(xí)他人編寫的代碼時(shí),他會(huì)更好地了解產(chǎn)品。因此,當(dāng)要對開發(fā)過程做出新的決定時(shí),至少要有兩名專家:完全了解產(chǎn)品的編寫方式;可以輕松地相互交流;能夠找到并討論針對當(dāng)前問題的最佳解決方案。
4.如果開發(fā)人員知道他的工作將受到審查,那僅意味著他更有動(dòng)力編寫完美的代碼,并將為此付出更多的努力。這使開發(fā)人員和代碼審查人員都更加專業(yè),因?yàn)樗麄儌z都將努力在工作中取得更好的結(jié)果。
全美通過GitHub執(zhí)行代碼審查,如果您想了解更多信息,可以閱讀有關(guān)GitHub的相應(yīng)文章。這確實(shí)是一個(gè)非常有用的工具,因?yàn)樗刮覀償[脫了不必要的電子郵件通信,手動(dòng)問題跟蹤等工作。
最后,我們在前面提到編碼標(biāo)準(zhǔn)是檢查開發(fā)人員工作時(shí)必須檢查的必要事項(xiàng)。除了使代碼對任何開發(fā)人員都可讀的通用標(biāo)準(zhǔn)之外,還可以應(yīng)用其他標(biāo)準(zhǔn)來使代碼不僅易于查看,而且使代碼本身更易于處理。
可能是文本行長度,查看時(shí)間,可接受的缺陷率等方面的限制。這里的想法是您分析和衡量的所有事情都會(huì)隨著時(shí)間的推移而變得越來越好,因此,不斷進(jìn)行代碼審查不僅使開發(fā)過程從長遠(yuǎn)角度來看是有效的,而且使預(yù)測過程更加可預(yù)測和可估計(jì)。
盡管代碼審查最初是在1970年代發(fā)明的,當(dāng)邁克爾·費(fèi)根(Michael Fagan)在他的論文中提到它時(shí),如今成都小程序開發(fā)越來越多地關(guān)注此方面的開發(fā)。這是因?yàn)槲覀兊默F(xiàn)實(shí),軟件生產(chǎn)計(jì)劃每年都在加速,而產(chǎn)品部署卻是一個(gè)無休止的過程。因此,如果您想創(chuàng)建出色的Web產(chǎn)品,請注意團(tuán)隊(duì)中的代碼審查過程。