国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

讀程序員的README筆記09_代碼評(píng)審

這篇具有很好參考價(jià)值的文章主要介紹了讀程序員的README筆記09_代碼評(píng)審。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

讀程序員的README筆記09_代碼評(píng)審

1.?行為準(zhǔn)則

讀程序員的README筆記09_代碼評(píng)審文章來源地址http://www.zghlxwxcb.cn/news/detail-751911.html

2.?代碼評(píng)審

2.1.?代碼評(píng)審是一種給予和接受反饋的專門的形式

2.1.1.?大多數(shù)團(tuán)隊(duì)會(huì)在合并代碼的修改之前進(jìn)行代碼評(píng)審

2.1.2.?評(píng)審不是一個(gè)證明你有多聰明的機(jī)會(huì),也不是一個(gè)橡皮圖章式的官僚主義障礙

2.2.?高質(zhì)量的代碼評(píng)審文化有助于所有具有不同經(jīng)驗(yàn)水平的工程師的成長(zhǎng),并促進(jìn)他們對(duì)代碼庫(kù)的共同理解

2.3.?糟糕的代碼評(píng)審文化會(huì)抑制創(chuàng)新,減慢開發(fā)速度,并且導(dǎo)致滋生怨恨情緒

2.3.1.?執(zhí)行不力的代碼評(píng)審會(huì)成為一種有害的阻礙

2.3.2.?輕率的反饋不提供任何價(jià)值,還會(huì)拖慢開發(fā)人員的速度

2.3.3.?緩慢的周轉(zhuǎn)時(shí)間會(huì)使代碼的變化停滯不前

2.3.4.?如果沒有正確的評(píng)審文化,開發(fā)人員可能會(huì)陷入反復(fù)拉鋸扯皮的分歧中,這可能會(huì)毀掉一個(gè)團(tuán)隊(duì)

3.?為什么需要評(píng)審代碼

3.1.?評(píng)審可以捕捉bug并保持代碼整潔

3.1.1.?代碼評(píng)審的價(jià)值不僅僅是讓人來代替自動(dòng)測(cè)試和代碼質(zhì)量檢查工具

3.2.?優(yōu)秀的代碼評(píng)審可以作為一個(gè)教學(xué)工具,傳播認(rèn)識(shí),記錄實(shí)現(xiàn)的決策,并提供代碼的更改記錄以確保安全性與合規(guī)性

3.2.1.?你可以從別人評(píng)審你的代碼給予的反饋中學(xué)習(xí)

3.2.2.?評(píng)審者會(huì)指出那些你可能不知道的有用的類庫(kù)和編碼實(shí)踐

3.3.?代碼評(píng)審也是了解你的團(tuán)隊(duì)的編碼風(fēng)格的一種簡(jiǎn)單方法

3.4.?評(píng)審整個(gè)代碼庫(kù)的變更可以確保不止一個(gè)人熟悉生產(chǎn)環(huán)境中代碼的每一行,對(duì)代碼庫(kù)的共同理解有助于團(tuán)隊(duì)更有凝聚力地?cái)U(kuò)展代碼

3.4.1.?讓別人知道你在改什么,意味著一旦出現(xiàn)了問題,你不是團(tuán)隊(duì)中唯一可以仰仗的人

3.5.?被記錄下來的評(píng)審意見也是一種文檔

3.5.1.?解釋了為什么事情會(huì)這樣做

3.5.2.?需要以某種特定方式編寫代碼的原因并不總是顯而易見的

3.5.3.?可以作為實(shí)現(xiàn)決策的檔案

3.5.4.?有舊的代碼評(píng)審作為參考,可以為開發(fā)人員提供一份書面的歷史記錄

3.6.?安全性和合規(guī)性政策通常規(guī)定了代碼評(píng)審作為一項(xiàng)防范措施來防止任何一名開發(fā)人員惡意修改代碼庫(kù)

4.?當(dāng)你的代碼被評(píng)審時(shí)

4.1.?一個(gè)精心準(zhǔn)備的評(píng)審請(qǐng)求可以使開發(fā)人員很容易理解你在做什么并提供有建設(shè)性的反饋

4.1.1.?保持單個(gè)代碼的小幅改動(dòng),將特性和重構(gòu)工作分到不同的評(píng)審中,并寫出描述性的提交信息,務(wù)必將注釋和測(cè)試包括在內(nèi)

4.2.?用評(píng)審草案降低風(fēng)險(xiǎn)

4.2.1.?代碼修改的草案是一種思考和提出相應(yīng)修改的很棒的方式,這種方式不需要投入那么多時(shí)間來編寫測(cè)試、打磨代碼和添加文檔

4.3.?提交評(píng)審請(qǐng)勿觸發(fā)測(cè)試

4.3.1.?在本地調(diào)試某項(xiàng)失敗的測(cè)試比在CI環(huán)境中更容易一些

4.3.2.?不能在遠(yuǎn)程計(jì)算機(jī)上附加調(diào)試器或輕松地獲取調(diào)試信息

4.4.?預(yù)排大體量的代碼修改

4.4.1.?預(yù)排會(huì)議

4.4.1.1.?walk-through

4.4.1.2.?一種面對(duì)面的會(huì)議,開發(fā)人員在會(huì)上共享他們的屏幕,并引導(dǎo)隊(duì)友了解正在進(jìn)行的修改內(nèi)容

4.4.1.3.?是啟發(fā)想法和讓你的團(tuán)隊(duì)適應(yīng)代碼修改的好方法

4.5.?評(píng)審意見是針對(duì)代碼的,而不是針對(duì)你個(gè)人的

4.5.1.?甚至都不算是你的代碼,將來整個(gè)團(tuán)隊(duì)會(huì)擁有這些代碼

4.5.2.?得到很多評(píng)論是一種完全正常的現(xiàn)象,尤其當(dāng)你是團(tuán)隊(duì)中經(jīng)驗(yàn)不足的開發(fā)者之一時(shí)

4.6.?保持同理心,但不要容忍粗魯

4.7.?不要羞于要求別人評(píng)審你的代碼

4.7.1.?讓代碼評(píng)審一直懸而未決是不體諒他人的做法

5.?評(píng)審別人的代碼時(shí)

5.1.?分流評(píng)審請(qǐng)求

5.1.1.?當(dāng)你收到評(píng)審請(qǐng)求的通知時(shí),你作為評(píng)審者的工作就開始了

5.1.2.?大多數(shù)的修改是不那么緊急的

5.1.2.1.?如果緊急度不明確,請(qǐng)?jiān)儐柼峤徽?/h4>

5.1.3.?你不需要評(píng)審每一項(xiàng)代碼修改,要專注于那些你可以從中學(xué)習(xí)的修改和你熟悉的代碼

5.2.?給評(píng)審預(yù)留時(shí)間

5.2.1.?代碼評(píng)審類似于運(yùn)維工作,其規(guī)模和頻率在某種程度上無法預(yù)知

5.2.2.?大型的代碼評(píng)審可能需要進(jìn)行額外的計(jì)劃

5.3.?理解修改的意圖

5.3.1.?不要一上來就以提交評(píng)論的方式開始你的評(píng)審工作,首先要閱讀并提出問題

5.4.?提供全面的反饋

5.4.1.?需要對(duì)代碼修改的正確性、可實(shí)施性、可維護(hù)性、可讀性和安全性提供反饋

5.4.2.?指出那些違反代碼風(fēng)格手冊(cè)、難以閱讀或令人困惑的代碼

5.4.3.?閱讀測(cè)試用例并尋找bug以驗(yàn)證代碼的正確性

5.4.4.?尋找OWASP十大違規(guī)行為

5.4.4.1.?SQL注入攻擊、敏感數(shù)據(jù)泄露和跨站腳本攻擊的漏洞

5.5.?要承認(rèn)優(yōu)點(diǎn)

5.5.1.?代碼評(píng)審不一定全都是負(fù)面的評(píng)論

5.6.?區(qū)分問題、建議和挑剔

5.6.1.?并非所有的評(píng)審意見都有相同的重要性

5.6.2.?重大問題需要比中性的建議和膚淺的挑剔投入更多的關(guān)注

5.6.3.?在反饋前加上“可選”(optional)、“接受或不接受”(take it or leave it)或“非必須”(nonblocking)的字樣

5.7.?不要只做橡皮圖章

5.7.1.?可能會(huì)迫于壓力,在沒有真正看清楚的情況下就批準(zhǔn)了某項(xiàng)評(píng)審

5.7.2.?要抵制那種用草率批準(zhǔn)的方式快速給評(píng)審蓋上橡皮圖章的誘惑,橡皮圖章式的評(píng)審是有害的

5.7.3.?期望一次性就能充分評(píng)審一項(xiàng)巨大的代碼改動(dòng)是不合理的

5.8.?不要只局限于使用網(wǎng)頁版的評(píng)審工具

5.8.1.?代碼評(píng)審?fù)ǔT谝粋€(gè)專門的UI中處理

5.8.2.?代碼評(píng)審本身也只是代碼而已

5.9.?不要忘記評(píng)審測(cè)試代碼

5.9.1.?評(píng)審者經(jīng)常會(huì)忽略測(cè)試代碼,特別是當(dāng)變更比較大的時(shí)候

5.9.2.?測(cè)試代碼應(yīng)該像代碼的其他部分一樣被評(píng)審

5.9.3.?一定要檢查測(cè)試代碼的可維護(hù)性和清潔度

5.10.?⑩推動(dòng)決斷

5.10.1.?不要成為促成“夭折”的原因,要幫助提交者評(píng)審以迅速批準(zhǔn)他們的代碼

5.10.2.?堅(jiān)持質(zhì)量,但不要成為不可逾越的障礙

5.10.3.?尊重正在進(jìn)行的修改的范圍

5.10.4.?如果對(duì)代碼修改有重大分歧,而你和作者又不能解決分歧的話,請(qǐng)主動(dòng)提出把這個(gè)問題移交給其他專家,他們可以幫助解決相關(guān)分歧

到了這里,關(guān)于讀程序員的README筆記09_代碼評(píng)審的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 讀程序員的README筆記11_軟件交付(下)

    讀程序員的README筆記11_軟件交付(下)

    1.3.5.1.?通過持續(xù)交付,人力被完全從部署環(huán)節(jié)中移除 1.3.5.2.?打包、測(cè)試、發(fā)布、部署,甚至展開環(huán)節(jié)都是自動(dòng)化的 1.3.6.1.?Puppet、Salt、Ansible和Terraform等現(xiàn)成的解決方案可以與現(xiàn)有的工具集成,并且它們是專門為了自動(dòng)化部署而設(shè)計(jì)的 1.4.4.1.?只需再次指向舊的版本 1.5.1.1.?

    2024年02月04日
    瀏覽(23)
  • 讀程序員的README筆記10_軟件交付(上)

    讀程序員的README筆記10_軟件交付(上)

    3.1.1.1.?打包一個(gè)構(gòu)件稱為發(fā)布 3.1.3.1.?部署的軟件還不能被用戶訪問 3.1.3.1.1.?只是被安裝了而已 3.1.3.2.?一旦部署,軟件就會(huì)通過將用戶轉(zhuǎn)移到新的軟件上而進(jìn)行展開 3.1.4.1.?交付過程是更大的產(chǎn)品開發(fā)周期中的一部分 6.10.2.1.?每季度或每年發(fā)布一次

    2024年02月04日
    瀏覽(21)
  • 讀程序員的README筆記04_防御式編程

    讀程序員的README筆記04_防御式編程

    1.2.1.1.?切記讓你的代碼安全而有彈性 1.2.1.2.?編寫擁有良好防御性的代碼是一種對(duì)那些運(yùn)行你的代碼的人(包括你自己?。└挥型樾牡谋憩F(xiàn) 1.2.1.3.?防御性的代碼較少發(fā)生故障,就算它發(fā)生故障,也更有可能恢復(fù) 1.2.1.4.?安全的代碼利用編譯時(shí)的校驗(yàn)來避免運(yùn)行時(shí)的故障,使

    2024年02月05日
    瀏覽(20)
  • 讀程序員的README筆記01_學(xué)習(xí)如何學(xué)習(xí)

    讀程序員的README筆記01_學(xué)習(xí)如何學(xué)習(xí)

    6.3.2.1.?錯(cuò)誤是不可避免的。成為一名軟件工程師的路途艱辛,我們有時(shí)會(huì)失敗 6.5.4.1.?代碼從不說謊。注釋有時(shí)卻會(huì)。 6.5.4.1.1.?Code never lies. Comments sometimes do 6.5.4.1.2.?去讀源代碼,因?yàn)樗⒉豢偸桥c設(shè)計(jì)文檔相吻合 6.5.4.1.3.?不要只讀你自己的代碼庫(kù),還要去閱讀高質(zhì)量的開

    2024年02月05日
    瀏覽(24)
  • 讀程序員的README筆記05_日志、監(jiān)控與配置

    讀程序員的README筆記05_日志、監(jiān)控與配置

    6.1.1.1.?測(cè)量的是某個(gè)事件發(fā)生的次數(shù) 6.1.1.2.?通過使用計(jì)數(shù)器獲得緩存命中數(shù)和請(qǐng)求總數(shù),你就可以計(jì)算出緩存命中率 6.1.2.1.?一個(gè)基于時(shí)間點(diǎn)的測(cè)量值 6.1.2.2.?既可以上升又可以下降 6.1.3.1.?根據(jù)事件的大小幅度分成不同的范圍 6.1.3.2.?每一個(gè)范圍都會(huì)有一個(gè)計(jì)數(shù)器,每當(dāng)某

    2024年02月05日
    瀏覽(50)
  • 讀程序員的README筆記18_職業(yè)生涯規(guī)劃

    讀程序員的README筆記18_職業(yè)生涯規(guī)劃

    3.1.5.1.?他們的工作職責(zé)之一是管理他們的團(tuán)隊(duì),而管理的一部分就是對(duì)你投入時(shí)間 3.1.5.2.?對(duì)管理者而言,反復(fù)取消一對(duì)一面談可以是一個(gè)有價(jià)值的信號(hào) 3.3.2.1.?每個(gè)目標(biāo)都附有3到5個(gè)關(guān)鍵結(jié)果,它們是標(biāo)志著目標(biāo)達(dá)成的具體指標(biāo) 3.3.2.2.?不要把關(guān)鍵結(jié)果變成待辦事項(xiàng)清單 3.

    2024年02月04日
    瀏覽(18)
  • 讀程序員的README筆記13_技術(shù)設(shè)計(jì)流程(上)

    讀程序員的README筆記13_技術(shù)設(shè)計(jì)流程(上)

    3.4.1.1.?外界干擾是深度工作的“殺手” 3.4.1.2.?避免所有的交流方式 3.4.1.2.1.?關(guān)閉聊天 3.4.1.2.2.?關(guān)閉電子郵件 3.4.1.2.3.?禁用電話通知 3.4.1.2.4.?換個(gè)地方坐 3.4.2.1.?有形產(chǎn)出是一份設(shè)計(jì)文檔 4.2.3.1.?如果有一個(gè)以上的問題,詢問哪些問題是最優(yōu)先的 4.3.7.1.?注意與外人交流時(shí)不

    2024年02月04日
    瀏覽(53)
  • 讀程序員的README筆記14_技術(shù)設(shè)計(jì)流程(下)

    讀程序員的README筆記14_技術(shù)設(shè)計(jì)流程(下)

    1.4.2.1.?該項(xiàng)目將需要至少一個(gè)月的工程時(shí)間 1.4.2.2.?變更將對(duì)軟件的擴(kuò)展和維護(hù)產(chǎn)生長(zhǎng)期的影響 1.4.2.3.?變更將顯著影響其他團(tuán)隊(duì) 1.5.2.1.?設(shè)計(jì)文檔是一種工具,可以幫助你思考、獲得反饋、讓你的團(tuán)隊(duì)了解情況、培養(yǎng)新的工程師,并推動(dòng)項(xiàng)目規(guī)劃 1.5.5.1.?閱讀大量的設(shè)計(jì)文檔

    2024年02月04日
    瀏覽(20)
  • 讀程序員的README筆記17_構(gòu)建可演進(jìn)的架構(gòu)(下)

    讀程序員的README筆記17_構(gòu)建可演進(jìn)的架構(gòu)(下)

    1.3.3.1.?開發(fā)人員可以只專注于和自己相關(guān)的字段,因?yàn)樗鼈儠?huì)繼承其他字段的默認(rèn)值 1.3.3.2.?默認(rèn)值可使大型API在感覺上很小巧 1.4.1.1.?OpenAPI通常用于RESTful服務(wù) 1.4.1.2.?non-REST服務(wù)則使用Protocol Buffers、Thrift或類似的接口定義語言(interface definition language,IDL) 1.4.1.3.?接口定義工

    2024年02月04日
    瀏覽(50)
  • 讀程序員的README筆記16_構(gòu)建可演進(jìn)的架構(gòu)(上)

    讀程序員的README筆記16_構(gòu)建可演進(jìn)的架構(gòu)(上)

    3.1.1.1.?致軟件依賴于其他的API或代碼行為 3.1.1.2.?依賴性顯然不可避免,甚至是可取的,但必須取得平衡 3.1.1.3.?高依賴性的系統(tǒng)很難修改 3.1.1.3.1.?它們有緊密的耦合性和高度的變更放大效應(yīng) 3.1.1.3.2.?緊密的耦合性是指那些嚴(yán)重依賴彼此的模塊,它們導(dǎo)致了更高的變更放大的

    2024年02月04日
    瀏覽(56)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包