自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

你做過代碼 Review 嗎?

開發(fā) 前端
想要做好一場合格的代碼 Review,首先我們需要知道代碼 Review 的過程中都有哪些角色以及需要怎樣的流程。

[[384753]]

本文轉(zhuǎn)載自微信公眾號「Java極客技術(shù)」,作者鴨血粉絲。轉(zhuǎn)載本文請聯(lián)系Java極客技術(shù)公眾號。

Hello 大家好我是阿粉,代碼 Review 相信大家一定不會陌生,但是真正在日常工作中能使用并且堅持執(zhí)行下去的公司或者團隊,阿粉覺得并不多,但是代碼 Review 的好處大家都是有目共睹的,很多招聘崗位上面都有這樣的要求,堅持執(zhí)行代碼 Review 對團隊,對公司是很有好處的,特別是對寫代碼的同事!每個一起閱讀代碼的同事都會提出一些自己的建議 ,這些建議都是很寶貴的資源,往往都會有很大的收獲。

那么如何做好一場代碼 Review 呢?想要做好一場合格的代碼 Review,首先我們需要知道代碼 Review 的過程中都有哪些角色以及需要怎樣的流程。

角色

  • 代碼的作者 Author;
  • 閱讀代碼的同事 Reviewer;
  • 主持人 Host;
  • 記錄員 Recorder。

流程

  1. 提前一天發(fā)送 Review 代碼郵件給相關(guān)人員,確定 Host 和 Recorder;
  2. 由 Host 主持 Review 會議;
  3. 由 Reviewer 和 Author 進行代碼走讀;
  4. 由 Recorder 進行改進記錄。

在做代碼 Review 之前 Author 需要提前一天需要發(fā)正式郵件給相關(guān)人員,并且將需要被 Review 的代碼通過郵件附件的方式,發(fā)送給相關(guān)的 Reviewer 讓他們提前閱讀,這樣有助于 Review 的時候可以更高效的進行。并且提前溝通好代碼 Review 的會議 Host 和 Recorder。Host 在會議過程中負責(zé)組織大家發(fā)言和維護秩序,讓代碼 Review 更高效;Recorder 則負責(zé)將整個 Review 過程中提到的需要優(yōu)化和改進的點進行文檔形式的記錄,記錄的信息需要言簡意賅,將哪個文件哪一行代碼,問題是什么,建議怎么優(yōu)化都需要記下來,并且在會議結(jié)束過后以郵件的形式發(fā)送給 Author 和抄送大家。

Review

在進行代碼 Review 的時候 Author 需要從文件的第一行開始進行一行行的代碼走讀,對每一行的代碼進行描述,這里需要注意的是不要認為某個功能很簡單,就可以一句帶過,往往很多線上 Bug 都是因為這種忽略導(dǎo)致的。走讀代碼的時候 Author 需要解釋清楚每一行代碼的含義,說明這行代碼是干嘛的,為什么要這樣寫。Reviewer 則需要根據(jù) Author 的描述再結(jié)合自己之前閱讀代碼的理解進行提問或者改進方案。

代碼走讀的過程持續(xù)進行的同時 Recorder 需要及時記錄需要改進的內(nèi)容,并把提出的優(yōu)化方案記錄下來。代碼走讀的過程是整個 Review 的核心,在這個環(huán)節(jié)中我們需要注意很多東西。知乎上面有個提問大家的公司的 Code Review 都是怎么做的?遇到過哪些問題?,上面有個回答提出的幾個點很不錯,我覺得有必要分享給大家,對我們的整個 Review 會很有幫助,特別是當(dāng)自己是 Reviewer 的時候,需要格外注意。

  • 對事不對人。要記住大家都是同事,今天自己是 Reviewer 來對別人的代碼進行 Review,哪天別人就會對自己的代碼進行 Review,所以在整個代碼 Review 的環(huán)節(jié)中,我們可以提出自己的建議,但是需要注意自己的用詞和語氣,雖然程序員有鄙視鏈,并且都認為別人的代碼垃圾,但是這種時候不能瞎說,容易打架的,還是要謙虛點。
  • 用正面的詞匯進行評價。跟上面說的一樣,我們需要用正面的詞匯進行評價代碼,考慮 Author 的情緒,即使代碼寫的不好。這個很好理解,畢竟代碼 Review 是在很多人面前的,對 Author 來說,讓別人看自己寫的代碼就像在別人面前裸奔一樣,所以我們不僅要提出意見在好的地方我們也要進行正向的表揚。
  • 如果有更好的方案一定要提出來。代碼 Review 的目的就是優(yōu)化代碼,找出代碼中的隱藏 BUG 以及邏輯問題。所以如果發(fā)現(xiàn)了代碼有任何不優(yōu)雅的地方或者會出現(xiàn)問題的地方一定要及時的提出來,不要擔(dān)心自己說的不對,或者考慮 Author 的面子問題,不指出來,提供更好的解決方案,讓大家一起進步。
  • Review 會議是 Review 代碼,而不是討論需求。這一點也是很容易被帶偏的一個點,經(jīng)常我們會發(fā)現(xiàn)在 Review 的過程中,慢慢的就變成了討論需求了,這種情況一定要避免發(fā)生,不然整個代碼 Review 環(huán)節(jié)就是失敗的,無法進行下去了。所以 Author 在發(fā)起代碼 Review 邀請時一定要確保自己理解的需求是正確的,避免浪費大家的時間。
  • 高效的進行。進行代碼 Review 的時候我們需要注意一定要高效,如何做到高效就需要每個人都做好相應(yīng)的準(zhǔn)備,Author 需要對自己的代碼進行熟練的講解,Reviewer 需要在參加會議之前將需要 Review 的代碼看一下,提前找到可能隱藏的 Bug,對于不懂地方需要做好記錄,方便開會的時候及時指出。
  • 避免形式主義。這一點也是被很多小伙伴忽略的一點,隨著代碼 Review 的次數(shù)越來越多,很多小伙伴可能就把這個當(dāng)成一個任務(wù),慢慢的就變成了形式主義,而不是注重實際,每次代碼 Review 的時候就很隨意,長期這樣下去對公司,團隊以及自己都不好,而且還浪費時間。

 

總結(jié)阿粉今天給大家介紹了一個如何做一個合格的代碼 Review,當(dāng)然這只是阿粉自己的一些見解,大家有任何意見可以在評論區(qū)給我們留言,大家一起交流學(xué)習(xí)。

 

責(zé)任編輯:武曉燕 來源: Java極客技術(shù)
相關(guān)推薦

2022-03-28 14:32:29

review代碼

2012-07-05 09:45:02

代碼審查

2013-10-24 09:43:58

代碼代碼審查

2019-04-03 08:10:17

代碼架構(gòu)信息

2009-08-05 09:59:40

Code Review代碼審查工具

2015-07-17 10:02:48

寫代碼

2018-04-17 11:47:06

if代碼參數(shù)

2012-04-01 09:22:15

2012-04-01 10:47:47

2024-09-29 08:21:11

2012-09-03 13:41:50

Code Review

2022-06-23 09:57:01

code-revie前端代碼

2012-08-01 10:32:07

代碼

2018-05-07 15:32:54

編程語言Python程序員

2019-10-28 08:44:29

Code Review代碼團隊

2022-07-10 20:51:25

IT數(shù)字化K8S

2021-05-13 10:40:16

ThreadLocal代碼Java

2019-07-25 12:46:32

Java高并發(fā)編程語言

2017-12-19 15:20:47

代碼應(yīng)用架構(gòu)

2022-04-11 08:20:36

編程輔助工具GitHubCopilot
點贊
收藏

51CTO技術(shù)棧公眾號