免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

代碼評(píng)審最佳實(shí)踐:Open Code Review方法論與落地清單

代碼評(píng)審最佳實(shí)踐:Open Code Review方法論與落地清單 1. 一次評(píng)審翻車(chē)后我重新思考了代碼評(píng)審到底在看什么先說(shuō)一個(gè)讓我印象很深的場(chǎng)景。前陣子我在某個(gè)訂單系統(tǒng)的權(quán)限模塊上提了一個(gè)合并請(qǐng)求自認(rèn)為把所有邊界情況都想到了改動(dòng)也就一百多行干凈利落。結(jié)果評(píng)審會(huì)上同組的A同學(xué)只問(wèn)了一句如果下游服務(wù)三秒還沒(méi)返回你這邊的重試邏輯會(huì)把庫(kù)存扣兩次嗎我當(dāng)場(chǎng)愣住——我的確加了重試但重試時(shí)沒(méi)有做冪等校驗(yàn)。那次評(píng)審最終沒(méi)有通過(guò)卻讓我意識(shí)到一件事我們對(duì)代碼評(píng)審這四個(gè)字的理解很多時(shí)候是錯(cuò)的。大家習(xí)慣把代碼評(píng)審當(dāng)成一道質(zhì)量關(guān)卡覺(jué)得是找毛病、挑刺、攔住有問(wèn)題的代碼。但實(shí)際上代碼評(píng)審更核心的價(jià)值是信息同步。寫(xiě)代碼的人往往陷在自己的假設(shè)里評(píng)審者因?yàn)閹е滞馊艘暯欠炊钊菀装l(fā)現(xiàn)這里跟需求文檔對(duì)不上這里跟調(diào)用方的約定不一致這里沒(méi)考慮并發(fā)下的重復(fù)請(qǐng)求這類(lèi)問(wèn)題。A同學(xué)能問(wèn)出那句話不是因?yàn)槲覍?xiě)得不認(rèn)真而是因?yàn)樗吹搅宋铱床坏降纳舷挛摹_@也是我把這套實(shí)踐命名為open-code-review的原因。它不是某個(gè)現(xiàn)成的開(kāi)源工具而是一套我自己從多次評(píng)審中沉淀下來(lái)的開(kāi)放評(píng)審方法對(duì)代碼保持開(kāi)放對(duì)意見(jiàn)保持開(kāi)放對(duì)流程本身也保持開(kāi)放。你不需要成為專(zhuān)家才能用上它剛接觸評(píng)審的新手可以拿它當(dāng)入門(mén)指南帶團(tuán)隊(duì)的負(fù)責(zé)人可以拿它當(dāng)流程改版的參考。它要解決的核心問(wèn)題就一個(gè)讓評(píng)審真正攔住該攔的缺陷而不是變成走過(guò)場(chǎng)。順帶說(shuō)一句很多人覺(jué)得代碼評(píng)審浪費(fèi)時(shí)間。這個(gè)賬要算清楚缺陷發(fā)現(xiàn)得越晚修復(fù)成本越高。寫(xiě)代碼時(shí)發(fā)現(xiàn)的是低固定成本到了線上出故障可能牽扯數(shù)據(jù)修復(fù)、客戶(hù)投訴、緊急回滾。一次十到二十分鐘的評(píng)審如果能攔下一個(gè)潛在的線上事故這筆投入就非常劃算。問(wèn)題是大多數(shù)團(tuán)隊(duì)的評(píng)審并沒(méi)有在攔事故而是在比誰(shuí)的英語(yǔ)語(yǔ)法好、誰(shuí)的命名風(fēng)格更符合某個(gè)人的偏好。所以這篇內(nèi)容我把整個(gè) open-code-review 實(shí)踐拆成六個(gè)方面評(píng)審對(duì)象、評(píng)審節(jié)奏、工具輔助、意見(jiàn)表達(dá)、常見(jiàn)陷阱以及我最終落地的檢查清單。內(nèi)容會(huì)比較多但每一條都是踩過(guò)坑之后整理出來(lái)的希望你不用再走一遍彎路。2. 評(píng)審對(duì)象與流程設(shè)計(jì)從看代碼到看設(shè)計(jì)意圖2.1 評(píng)審的粒度小型異步評(píng)審才是常態(tài)很多人一提到代碼評(píng)審腦子里浮現(xiàn)的是一屋子人圍在投影儀前。那是過(guò)去重型評(píng)審的典型畫(huà)面適合非常核心的模塊但對(duì)日常開(kāi)發(fā)來(lái)說(shuō)太笨重了。我們團(tuán)隊(duì)現(xiàn)在的主流方式是小型異步評(píng)審開(kāi)發(fā)者提交合并請(qǐng)求評(píng)審者在自己的電腦上看diff寫(xiě)行內(nèi)評(píng)論最后給出結(jié)論。不占用會(huì)議室不用湊齊所有人隨時(shí)隨地可以開(kāi)始。不過(guò)這里有個(gè)前提合并請(qǐng)求的粒度必須足夠小。我見(jiàn)過(guò)最夸張的一次有人把一個(gè)迭代兩周的功能、七八個(gè)文件、三千多行改動(dòng)一次性塞進(jìn)一個(gè)合并請(qǐng)求里美其名曰完整交付。結(jié)果就是評(píng)審人根本看不過(guò)來(lái)草草 approve上線第二天就出了事故?,F(xiàn)在我對(duì)粒度的要求很簡(jiǎn)單一個(gè)合并請(qǐng)求只干一件事。重構(gòu)一個(gè)函數(shù)就只重構(gòu)這個(gè)函數(shù)修復(fù)一個(gè)bug就只修復(fù)這個(gè)bug新增一個(gè)接口就只新增這個(gè)接口。改動(dòng)行數(shù)最好控制在三百行以?xún)?nèi)超過(guò)這個(gè)數(shù)就要反思是不是沒(méi)拆干凈。為什么是三百行我記得有一次項(xiàng)目統(tǒng)計(jì)改動(dòng)行數(shù)超過(guò)五百行的合并請(qǐng)求評(píng)審者平均只在三成區(qū)域留下了有效評(píng)論而小于兩百行的合并請(qǐng)求評(píng)審覆蓋率能到八成以上。人腦對(duì)連續(xù)信息的處理容量是有限的收益隨著代碼量增加迅速遞減。小粒度的合并請(qǐng)求還有一個(gè)隱藏好處回滾方便。萬(wàn)一上線出問(wèn)題一行g(shù)it revert就能干凈地撤銷(xiāo)整件事不用擔(dān)心帶上無(wú)關(guān)的改動(dòng)。這對(duì)線上穩(wěn)定性的價(jià)值很多時(shí)候比評(píng)審本身還要大。2.2 評(píng)審清單怎么設(shè)計(jì)分層攔截而不是逐行讀代碼很多人評(píng)審的時(shí)候是悶頭讀代碼從第一個(gè)文件開(kāi)始一個(gè)循環(huán)看一屏看到哪算哪。這種流式評(píng)審的效率非常低因?yàn)槟銢](méi)有帶著靶子去看。我現(xiàn)在的做法是先列清單再按清單去掃描。清單不是流水賬而是分層設(shè)計(jì)。第一層是正確性與安全性這個(gè)問(wèn)題最大直接決定上線后會(huì)不會(huì)炸。重點(diǎn)關(guān)注數(shù)據(jù)校驗(yàn)是否完善、越權(quán)訪問(wèn)有沒(méi)有攔截、并發(fā)場(chǎng)景下?tīng)顟B(tài)會(huì)不會(huì)亂、異常分支是否處理、敏感信息有沒(méi)有打日志。第二層是可維護(hù)性這個(gè)問(wèn)題不直接導(dǎo)致事故但決定了下個(gè)月的你或者同事會(huì)不會(huì)想罵人。函數(shù)是否過(guò)長(zhǎng)、命名是否名不副實(shí)、是否存在重復(fù)代碼、模塊之間的依賴(lài)是否合理、有沒(méi)有留下讓人困惑的魔法數(shù)字。第三層才是代碼風(fēng)格與性能。風(fēng)格問(wèn)題盡量交給自動(dòng)化工具不值得人工花時(shí)間性能問(wèn)題只在有明顯瓶頸的時(shí)候提不要在業(yè)務(wù)代碼里糾結(jié)一次遍歷是 O(n) 還是 O(2n)。這三層看起來(lái)簡(jiǎn)單實(shí)際操作時(shí)有一個(gè)關(guān)鍵技巧先看測(cè)試再看實(shí)現(xiàn)最后看上下文引入點(diǎn)。大多數(shù)評(píng)審者習(xí)慣拿過(guò)代碼就開(kāi)始讀實(shí)現(xiàn)讀到一半才去想這個(gè)函數(shù)應(yīng)該是干什么的。如果你先看測(cè)試用例測(cè)試的名稱(chēng)和斷言會(huì)直接告訴你作者的真實(shí)意圖然后帶著這個(gè)意圖去看實(shí)現(xiàn)就能很快發(fā)現(xiàn)實(shí)現(xiàn)跟意圖之間的偏差最后再看這個(gè)改動(dòng)被誰(shuí)調(diào)用、影響哪些上游下游把全局上下文補(bǔ)上。這個(gè)順序我第一次用的時(shí)候只花了過(guò)去一半的時(shí)間就發(fā)現(xiàn)了兩個(gè)真正的邏輯漏洞。2.3 合并請(qǐng)求模板把該寫(xiě)的信息前置流程設(shè)計(jì)里最容易忽略的是合并請(qǐng)求描述本身。我見(jiàn)過(guò)太多人只寫(xiě)一句fix bug或者update評(píng)審人被迫從代碼里反推意圖。信息不對(duì)稱(chēng)是評(píng)審低效的最大來(lái)源而模板是解決這個(gè)問(wèn)題的最便宜的方案。一個(gè)實(shí)用的合并請(qǐng)求模板應(yīng)該包含三塊這次改動(dòng)解決什么問(wèn)題最好帶上復(fù)現(xiàn)步驟或現(xiàn)象截圖、改動(dòng)涉及哪些模塊和文件讓評(píng)審人知道哪里是重點(diǎn)、測(cè)試情況如何單元測(cè)試、手動(dòng)驗(yàn)證、影響范圍。最后一塊特別重要很多人提交之前根本沒(méi)想自己測(cè)過(guò)什么寫(xiě)著寫(xiě)著就發(fā)現(xiàn)自己還有一堆沒(méi)驗(yàn)證的地方。有了模板評(píng)審人可以在一兩分鐘內(nèi)建立起對(duì)改動(dòng)的全局認(rèn)知然后把注意力集中在真正有風(fēng)險(xiǎn)的地方。這個(gè)前置信息的小改動(dòng)帶來(lái)的效率提升遠(yuǎn)超你想象。3. 評(píng)審節(jié)奏與時(shí)間管理把評(píng)審控制在十五分鐘以?xún)?nèi)3.1 為什么評(píng)審會(huì)拖成無(wú)效加班不知道你有沒(méi)有過(guò)這種經(jīng)歷一個(gè)合并請(qǐng)求掛在列表里好幾天催了兩次都沒(méi)人看最后催急了才有人熬夜幫你點(diǎn)了通過(guò)。評(píng)審周期拖得越長(zhǎng)上下文丟失得越嚴(yán)重作者甚至都忘了自己當(dāng)時(shí)為什么這么寫(xiě)評(píng)審人還得花大量時(shí)間重新理解。更糟的是有些團(tuán)隊(duì)會(huì)抱怨代碼評(píng)審?fù)下说鋵?shí)拖慢迭代的不是評(píng)審本身而是沒(méi)有節(jié)奏的評(píng)審。我總結(jié)過(guò)幾個(gè)常見(jiàn)的節(jié)奏殺手評(píng)審請(qǐng)求發(fā)在群里沒(méi)人明確接單、評(píng)審人趕在下班前才開(kāi)始看所以草草了事、一個(gè)改動(dòng)同時(shí)等兩三個(gè)人評(píng)論導(dǎo)致結(jié)論打架、作者提交代碼后不主動(dòng)跟進(jìn)提醒。這些問(wèn)題跟技術(shù)關(guān)系不大但跟評(píng)審能不能跑起來(lái)關(guān)系很大。3.2 設(shè)定明確的時(shí)間盒十五分鐘決策機(jī)制我現(xiàn)在的經(jīng)驗(yàn)是每次評(píng)審最多給自己十五分鐘。聽(tīng)起來(lái)很激進(jìn)但配合小粒度的合并請(qǐng)求完全可行。前兩分鐘看描述和測(cè)試中間十分鐘過(guò) diff 和關(guān)鍵分支最后三分鐘寫(xiě)結(jié)論或者跟作者在線溝通。超過(guò)十五分鐘還沒(méi)看完說(shuō)明這個(gè)改動(dòng)已經(jīng)超出了它的安全評(píng)審范圍這時(shí)候就停下來(lái)讓作者拆下一次評(píng)審而不是硬撐著讀完。時(shí)間盒的好處是逼迫你區(qū)分必須看和可以跳過(guò)。很多人覺(jué)得每行都得看這是誤解。關(guān)鍵邏輯看三遍都不嫌多樣板代碼掃一眼就夠。有了時(shí)間壓力你的注意力反而更集中不會(huì)讀著讀著就跳到某個(gè)無(wú)關(guān)緊要的格式問(wèn)題上。實(shí)際操作中我會(huì)配合一個(gè)簡(jiǎn)單儀式評(píng)審?fù)瓿珊蟛还芙Y(jié)果是通過(guò)還是打回都在評(píng)審記錄里寫(xiě)一句已評(píng)審耗時(shí)X分鐘主要關(guān)注點(diǎn)是ABC。這句話幫作者快速定位風(fēng)險(xiǎn)區(qū)域也幫團(tuán)隊(duì)統(tǒng)計(jì)評(píng)審效率。后來(lái)我們的合并請(qǐng)求平均合并速度從三天縮短到半天靠的其實(shí)都是這種小節(jié)奏的改進(jìn)。3.3 評(píng)審會(huì)議出現(xiàn)在什么時(shí)候異步評(píng)審是主流但有一個(gè)場(chǎng)景我會(huì)特意安排同步討論跨模塊的接口變更。比如你的改動(dòng)涉及調(diào)用方或者改了某個(gè)公共方法的入?yún)⑦@時(shí)候異步評(píng)論來(lái)回一輪可能要半天同步開(kāi)個(gè)短會(huì)大家直接把路由打通把實(shí)現(xiàn)方的假設(shè)和調(diào)用方的需求放在同一張白板上效率反而更高。這類(lèi)會(huì)議有個(gè)前提你必須帶著已經(jīng)完成的異步評(píng)審結(jié)論來(lái)而不是把會(huì)議當(dāng)成評(píng)審起點(diǎn)。我參加過(guò)很多一起看代碼的會(huì)實(shí)際效果基本是幾個(gè)人盯著投影儀發(fā)呆誰(shuí)都不好意思發(fā)言。正確姿勢(shì)是每個(gè)人先自己看一遍寫(xiě)好問(wèn)題清單會(huì)上只討論清單里的差異點(diǎn)十分鐘內(nèi)解決問(wèn)題十五分鐘聊完收工。4. 工具鏈怎么輔助 open-code-reviewdiff、行內(nèi)評(píng)論與自動(dòng)化檢查4.1 diff 閱讀順序與上下文切換代碼托管平臺(tái)的合并請(qǐng)求界面本質(zhì)上是把 diff 呈現(xiàn)給你看。但這個(gè)界面有個(gè)陷阱你看到的是變更后的代碼而評(píng)審真正需要對(duì)比的是變更前和變更后之間的語(yǔ)義差異。很多評(píng)審者看到一行刪除、幾行新增就急著評(píng)論其實(shí)根本不知道刪除的上下文在哪里。我建議按先新增、再刪除、后調(diào)整的順序讀 diff。新增代碼說(shuō)明這個(gè)改動(dòng)帶來(lái)了什么刪除代碼說(shuō)明它移除了什么調(diào)整代碼說(shuō)明它改了原來(lái)的什么假設(shè)。讀的時(shí)候注意平臺(tái)提供的展開(kāi)上下文功能尤其是那些看似沒(méi)變的周邊代碼有時(shí)候 bug 就藏在那幾行沒(méi)變的調(diào)用里。行內(nèi)評(píng)論是異步評(píng)審的核心工具。它的優(yōu)勢(shì)是可以精確定位到某一行作者一打開(kāi)就明白你在說(shuō)什么完全可以替代那種整體寫(xiě)得還不錯(cuò)但邏輯有問(wèn)題的模糊評(píng)語(yǔ)。我個(gè)人的習(xí)慣是每條評(píng)論盡量短只說(shuō)一件事不搞長(zhǎng)篇大論。如果確實(shí)需要解釋大背景我會(huì)先寫(xiě)一行核心結(jié)論再用一個(gè)背景子段落展開(kāi)方便作者快速?zèng)Q定要不要看細(xì)節(jié)。4.2 自動(dòng)化檢查該攔什么、不該攔什么自動(dòng)化工具是評(píng)審的好幫手但用不好也會(huì)制造噪音。我的原則其實(shí)很簡(jiǎn)單能讓機(jī)器確定的事情就不要浪費(fèi)人的時(shí)間機(jī)器不確定的事情也不要讓機(jī)器亂發(fā)言。可以交給自動(dòng)化工具的有代碼格式、明顯的類(lèi)型問(wèn)題、未使用的變量、明顯的空指針風(fēng)險(xiǎn)、日志中是否打印了敏感信息、依賴(lài)license問(wèn)題、重復(fù)代碼比例。這些檢查建議全部接入提交前和合并前的流水線攔截了就把這類(lèi)型的評(píng)論從人工評(píng)審里剔出去。不該交給自動(dòng)化工具的有業(yè)務(wù)邏輯是否正確、接口語(yǔ)義是否符合需求、并發(fā)處理是否合理、數(shù)據(jù)一致性是否保證。這些判斷需要完整的業(yè)務(wù)上下文機(jī)器現(xiàn)在遠(yuǎn)做不到。很多團(tuán)隊(duì)在流水線里塞了一堆建議級(jí)別的檢查規(guī)則結(jié)果開(kāi)發(fā)者天天被逼著改無(wú)意義的告警反而沖淡了真正有價(jià)值的人工評(píng)審。自動(dòng)化檢查應(yīng)該是守門(mén)員而不是評(píng)論員該守的門(mén)守住剩下的交給人去對(duì)話。4.3 評(píng)審結(jié)論的三種表達(dá)通過(guò)、評(píng)論、請(qǐng)求修改工具上通常有三個(gè)按鈕同意合并、評(píng)論、請(qǐng)求修改。這三個(gè)按鈕的語(yǔ)義一定要在團(tuán)隊(duì)里對(duì)齊否則很快會(huì)出現(xiàn)一群人點(diǎn)了評(píng)論作者不知道到底能不能合并的混亂狀態(tài)。我把它們的邊界定義得很清楚。通過(guò)意味著我認(rèn)為這個(gè)改動(dòng)可以上線如果后續(xù)有問(wèn)題我負(fù)責(zé)得起這是一個(gè)強(qiáng)承諾不是敷衍的點(diǎn)贊。評(píng)論意味著當(dāng)前代碼沒(méi)問(wèn)題但我有改進(jìn)意見(jiàn)你可以擇機(jī)處理不阻塞合并。請(qǐng)求修改意味著當(dāng)前代碼存在我無(wú)法接受的缺陷合并前必須解決。使用評(píng)論這一檔要尤其克制。我看到很多人明明發(fā)現(xiàn)了會(huì)影響線上正確性的 bug卻只寫(xiě)了一句你可以考慮一下這里是否應(yīng)該加個(gè)判斷然后點(diǎn)了通過(guò)。這是典型的躲避沖突。正確的做法是如果有顧慮就明確說(shuō)請(qǐng)求修改如果只是品味偏好就放在評(píng)論里別阻塞別人。這個(gè)邊界不清晰是評(píng)審失去效力的最大隱患之一。5. 評(píng)審意見(jiàn)的表達(dá)如何讓這段邏輯必須重寫(xiě)不變成一場(chǎng)爭(zhēng)執(zhí)5.1 意見(jiàn)分三檔必須修、建議修、風(fēng)格偏好評(píng)審者給出意見(jiàn)之前先自己心里分個(gè)檔。必須修是正確性問(wèn)題比如數(shù)據(jù)會(huì)被覆蓋、權(quán)限會(huì)被繞過(guò)、異常會(huì)觸發(fā)嚴(yán)重 bug。建議修是可維護(hù)性問(wèn)題比如命名不清、邏輯重復(fù)、缺少測(cè)試不修也不至于上線出事但留著會(huì)持續(xù)消耗后來(lái)的維護(hù)成本。風(fēng)格偏好是純個(gè)人傾向比如變量名用哪個(gè)詞、花括號(hào)怎么換行、注釋中英文比例。這三個(gè)檔位在評(píng)論里要用明確的詞標(biāo)出來(lái)比如[必須修] 這里缺少對(duì)空值的判斷[建議修] 這個(gè)函數(shù)可以拆成兩個(gè)小函數(shù)[風(fēng)格] 我更喜歡用 start 而不是 begin。這樣作者接到意見(jiàn)時(shí)不需要自己去猜嚴(yán)重程度也避免了你居然為了一個(gè)變量名就打回我的代碼這種事。其實(shí)很多評(píng)審摩擦本質(zhì)就是檔位沒(méi)對(duì)齊。作者以為你在說(shuō)風(fēng)格結(jié)果你暗中是把他往必須修的檔位上算評(píng)審者以為自己在提建議結(jié)果用詞又像是在下命令。把檔位亮在明面上沖突能少掉一大半。5.2 用問(wèn)題代替斷言評(píng)審者的蘇格拉底式提問(wèn)我在評(píng)審中學(xué)到的最重要的一課是結(jié)論自己會(huì)讓人防御問(wèn)題會(huì)讓人思考。你這塊代碼有并發(fā)風(fēng)險(xiǎn)和如果兩個(gè)請(qǐng)求同時(shí)在跑這段邏輯會(huì)不會(huì)出現(xiàn)重復(fù)扣款后者的接受度要高得多。原因很簡(jiǎn)單代碼是作者花費(fèi)時(shí)間和心思寫(xiě)出來(lái)的直接下結(jié)論相當(dāng)于否定了他的一部分勞動(dòng)。但只要換成提問(wèn)你們就從對(duì)立關(guān)系變成了一起探索問(wèn)題的隊(duì)友。我自己做評(píng)審時(shí)有個(gè)硬性規(guī)定凡是必須修級(jí)的問(wèn)題全部寫(xiě)成問(wèn)題形式措辭也盡量具體比如這個(gè) null 是從哪里傳進(jìn)來(lái)的調(diào)用方有沒(méi)有可能不傳而不是這里空指針了修一下。提問(wèn)式評(píng)審的額外產(chǎn)出是它逼著你自己先想明白問(wèn)題到底出在哪。比起脫口而出的斷言提問(wèn)要經(jīng)過(guò)更嚴(yán)謹(jǐn)?shù)乃伎歼@對(duì)評(píng)審質(zhì)量本身也是一個(gè)正向加成。5.3 作者側(cè)的反向操作主動(dòng)標(biāo)記這里我看過(guò)沒(méi)把握評(píng)審意見(jiàn)的溝通壓力不只是評(píng)審者的問(wèn)題作者也能做很多事。我的習(xí)慣是在提交信息或者合并請(qǐng)求描述里明確標(biāo)出我自己懷疑過(guò)但拿不準(zhǔn)的區(qū)域。這樣評(píng)審者就能把精力放在你最心虛的地方而不是均勻撒在全篇上。反過(guò)來(lái)作者越坦誠(chéng)地暴露自己的不確定評(píng)審者越愿意給出真正有幫助的建議這是一條正向反饋。作者收到意見(jiàn)之后也要有個(gè)處理清單必須修的問(wèn)題逐一確認(rèn)修改建議修的問(wèn)題能改就改不能改要給出理由風(fēng)格偏好看情況跟自己的想法一致就采納不一致可以保留。最差的做法是看到評(píng)論就情緒上頭逐條反駁把評(píng)審變成辯論賽。代碼評(píng)審的目標(biāo)是共同把代碼變得更好不是證明誰(shuí)更聰明。6. 那些年踩過(guò)的評(píng)審坑形式化評(píng)審、無(wú)休止討論與漏網(wǎng)之魚(yú)6.1 全員通過(guò)卻照樣出事故評(píng)審為什么失效了最令人沮喪的情況莫過(guò)于評(píng)審流程走完了每個(gè)人都點(diǎn)了通過(guò)結(jié)果上線還是出了事故。這不是評(píng)審系統(tǒng)失效而是評(píng)審變成了形式化蓋章。我可以列出幾種常見(jiàn)病根。一種是因?yàn)闄?quán)力關(guān)系不對(duì)等資深的人說(shuō)沒(méi)問(wèn)題其他人就不好意思再說(shuō)話。一種是因?yàn)樵u(píng)審者對(duì)業(yè)務(wù)背景完全不了解看了代碼只覺(jué)得語(yǔ)法沒(méi)毛病就通過(guò)。還有一種是最普遍的改動(dòng)太大、太雜評(píng)審者看了一部分就開(kāi)始犯困最后大家都想著反正 CI 過(guò)了先合并再說(shuō)。針對(duì)這些病根我做了兩手調(diào)整。其一評(píng)審意見(jiàn)和決定嚴(yán)格基于內(nèi)容和數(shù)據(jù)不基于等級(jí)資歷其二合并請(qǐng)求描述必須包含測(cè)試情況如果作者寫(xiě)不出自己驗(yàn)證過(guò)什么就不進(jìn)入評(píng)審環(huán)節(jié)。這兩條規(guī)定一起執(zhí)行之后全員通過(guò)但事故照出的情況才真正開(kāi)始變少。6.2 評(píng)審?fù)咸脤?dǎo)致的上下文丟失評(píng)審周期過(guò)長(zhǎng)不只是流程效率問(wèn)題更會(huì)影響評(píng)審質(zhì)量本身。幾個(gè)真實(shí)體會(huì)改動(dòng)提交第一天作者腦子里還有完整的上下文可以立刻響應(yīng)評(píng)論到第三天他自己都要重新看代碼才能想起當(dāng)時(shí)的決策評(píng)論的回復(fù)質(zhì)量明顯下降到一周幾乎所有人都對(duì)這個(gè)改動(dòng)失去新鮮感看到的只是一堆代碼而不是一個(gè)問(wèn)題。所以我對(duì)評(píng)審超時(shí)的處理很干脆超過(guò)兩個(gè)工作日的評(píng)審自動(dòng)提醒作者和評(píng)審者不解決就升級(jí)到同步會(huì)議。升級(jí)不是懲罰而是承認(rèn)異步溝通在這個(gè)場(chǎng)景下已經(jīng)失效強(qiáng)制換一種模式。這時(shí)候開(kāi)一個(gè)十五分鐘短會(huì)通常比繼續(xù)掛一天效率高得多。我還有一個(gè)親測(cè)有效的細(xì)節(jié)作者提交合并請(qǐng)求之后不要默默等待主動(dòng)在團(tuán)隊(duì)溝通頻道里發(fā)一條簡(jiǎn)短說(shuō)明包含描述鏈接和需要誰(shuí)來(lái)評(píng)審。很多合并請(qǐng)求掛在列表里被遺忘不是大家不負(fù)責(zé)而是真的沒(méi)注意到。主動(dòng)跟進(jìn)這一下能把整個(gè)評(píng)審周期縮短一大截。6.3 低層次問(wèn)題搶走了高層次注意力最后一個(gè)坑是評(píng)審者把精力花在了機(jī)器能解決的問(wèn)題上。我看到過(guò)太多評(píng)審討論在吵命名這個(gè)變量叫 result 還是 outcome這個(gè)函數(shù)放 utils 還是 helper。吵到天荒地老卻沒(méi)有一個(gè)人關(guān)心核心業(yè)務(wù)邏輯有沒(méi)有缺陷。這不是說(shuō)命名不重要而是說(shuō)解決這個(gè)問(wèn)題有更便宜的方式。代碼格式化工具、文檔規(guī)范、高質(zhì)量模板都能處理絕大多數(shù)低層次問(wèn)題。人工評(píng)審是團(tuán)隊(duì)成本最高、心智資源最稀缺的環(huán)節(jié)應(yīng)該把它留給只有人才能發(fā)現(xiàn)的問(wèn)題。每當(dāng)有人開(kāi)始對(duì)著格式爭(zhēng)議我都會(huì)提醒一句先看邏輯格式上如果有潔癖請(qǐng)先去改自動(dòng)化規(guī)則不要在這里消耗人。這個(gè)觀念的轉(zhuǎn)變也是 open-code-review 從找錯(cuò)的流程進(jìn)化成質(zhì)量共建系統(tǒng)的關(guān)鍵節(jié)點(diǎn)。評(píng)審不再是防御性的關(guān)卡而是大家一起討論設(shè)計(jì)意圖、發(fā)現(xiàn)盲區(qū)、對(duì)齊認(rèn)知的協(xié)作場(chǎng)合。如果能做到這一點(diǎn)代碼庫(kù)的質(zhì)量會(huì)以肉眼可見(jiàn)的速度提升。7. 我現(xiàn)在的評(píng)審習(xí)慣與最終落地清單從那次訂單系統(tǒng)重試扣庫(kù)存翻車(chē)到現(xiàn)在我一直在迭代自己的評(píng)審方式最終形成了三個(gè)固定的習(xí)慣。第一個(gè)習(xí)慣是先問(wèn)三個(gè)問(wèn)題再看代碼這個(gè)改動(dòng)要解決什么問(wèn)題它影響哪些模塊和調(diào)用方作者驗(yàn)證過(guò)什么三個(gè)問(wèn)題在合并請(qǐng)求描述里找不到答案的話我會(huì)直接請(qǐng)作者補(bǔ)充而不是自己猜著往下讀。這讓我避開(kāi)了大多數(shù)讀了一大半才發(fā)現(xiàn)方向不對(duì)的情況。第二個(gè)習(xí)慣是必須在一個(gè)小本子里留一句評(píng)審備注。評(píng)審?fù)曛箜樖钟浺痪溥@個(gè)改動(dòng)哪個(gè)區(qū)域風(fēng)險(xiǎn)最高、哪條意見(jiàn)最值得后續(xù)跟進(jìn)。本來(lái)只是給自己留痕跡沒(méi)想到后來(lái)做線上回查時(shí)幫了大忙能快速定位當(dāng)初評(píng)審時(shí)擔(dān)心的地方。第三個(gè)習(xí)慣是評(píng)審別人之前先把自己的合并請(qǐng)求隨手處理掉。一個(gè)團(tuán)隊(duì)里如果資深的人總把自己的評(píng)審壓到最后一刻新人很快就會(huì)覺(jué)得評(píng)審只是走個(gè)形式。先把別人交給我的代碼處理好再去推進(jìn)自己的開(kāi)發(fā)任務(wù)這個(gè)次序本身就在傳遞一種信號(hào)評(píng)審是值得被認(rèn)真對(duì)待的事它不是可有可無(wú)的尾巴工程。如果你所在的團(tuán)隊(duì)還在被無(wú)效評(píng)審困擾我的建議是不要指望一步到位。先從一件小事開(kāi)始把合并請(qǐng)求拆分到三百行以?xún)?nèi)給評(píng)審設(shè)定十五分鐘的時(shí)間盒把意見(jiàn)分檔標(biāo)清楚。這三個(gè)動(dòng)作不需要引入任何復(fù)雜平臺(tái)或工具只需要大家達(dá)成共識(shí)。我見(jiàn)過(guò)很多團(tuán)隊(duì)做到這一步之后評(píng)審會(huì)議的爭(zhēng)吵少了上線故障也明顯少了因?yàn)榇蠹医K于把力氣花在了真正值得花的地方。open-code-review 說(shuō)到底不是某種固定的形式。對(duì)別人寫(xiě)的代碼保持開(kāi)放對(duì)自己的盲區(qū)保持開(kāi)放對(duì)流程的改進(jìn)保持開(kāi)放——能做到這三點(diǎn)代碼評(píng)審就再也不是每月吐槽清單里的負(fù)擔(dān)而會(huì)成為整個(gè)團(tuán)隊(duì)質(zhì)量感覺(jué)最靈敏的一根神經(jīng)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷丁香五月天综合AV| 色婷婷操逼| 亚洲视频99| 在线网黄| 少妇婷婷五月天| 26uuu| 99综合99| 夜夜骑日日操| 五月丁香婷婷啪啪| 99在线观看视频| 丁香婷婷老熟女综合网| 无码99| 五月婷婷丁香俺日污视频| 色色色在线播放| 婷婷久久色| 五月天成人免费视频| 丁香五月天激情网| 色婷婷丁香特级性爱视频| 婷婷激情九月| 熟女激情网| www.久久色.com| 少妇高潮A片无套内谢麻豆传| 人人草人人舔| 手机旧版看人妻1025| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 草榴视频网| 婷婷丁香熟妇综合网| 激情五月天综合网| 99九九玖玖| 天天日夜夜帕| 丁香婷婷激情六月五月开心| 天天爱天天秀天天做| 色操b| 狠狠五月激情在线| WWW.桔色成人.COM入口| 久久性爱网站| 天天干com| 五月天激情社区| 亚洲视频色色| 中文字幕日韩无码制服诱或| 热99只有里视频| 男人天堂亚洲综合| 99精品无码网站| 日本色婷婷综合| 成人丁香五月| 欧洲激情五月天婷婷| www.99热| 亚洲婷婷成人五月天| 久久久久久天天日天天爱| 五月婷亚洲精品AV天堂| 激情五月伊人婷婷| 婷婷射婷婷舔| 国产亚洲色婷婷久久99精品91| 常久最新免费的色吊丝| 婷婷内射视频在线| 激情五月天色色| 激情综合久久| 热99久久这里只有精品| 婷婷五月婷婷五月| 99九九视频| 婷婷五月丁香五月综合网| 国产成人99久久亚洲综合精品| 五月天久久成人| 桃色激情婷婷伊人网| 婷婷五月俺要去| 五月婷婷伦理| 久久六月综合| 99自拍视频在线| 国产AV一区二区三区最新精品 | 九九这里只有精品在线视频| 五月婷婷网久久| 婷婷九月激情网| Jh7Uf088VHafNm| 99久久九九| 五月激情综合美女久久| 婷婷久久五月天| 亚洲综合五月天| 亚洲日本韩国| 婷婷基地爱| 国产 亚洲 在线| 男女99免费视频| 成人丁香| 久久91久久91色欲精品| 午夜九九电影| 91综合国免费久入| 亚洲黄色操逼| 五月网激情| 亚洲六月婷| 亚洲中文乱字字幕在线永久| 99热91| www.婷婷久久五月天| 丁香五月性爱爱五月| www.99久久久| 综合五月网| 色噜噜婷婷| αv中文字幕在线观| 久热婷婷在线视频| 精品99爱免费视频在线观看| 丁香六月综合激情| 青青日韩| 久久亚洲婷婷| 激情五月五月五月婷婷| 大香蕉综合在线| 免费看欧美成人A片无码| 成人国产网站| 综合在线丁香五月| 丁香九月婷婷| 午夜爱插插| 亚洲 在线 性爱| 一丁香五月天月AV| 日本色超碰| 久久久久妻| 日韩爱操视频| 婷色综合| 五月婷六月天| 一二线视频 另类| 97操视频| 五月丁香婷婷婷激情爱爱| 思思99热热热99| 色婷婷五月天视频在线| 久久无码成人| 日本色婷婷综合| 久操大| 五月色激情综合网| 婷婷五点亚洲| AV操一操| 五月天综合在线观看| 色区久久| 亚洲俩性性爱图片久久第六页| 丁香色成人| 成片免费观看大全| 天天干天天操天天爽| 精品少妇人妻AV无码专区偷人| 99热爱爱干干日| 激情五月,婷婷五月,丁香五月| 色五月婷婷久久| 色婷婷婷婷| 影音先锋777xfplay色资源网站| 二色av| 91ncom.色| 99热观看| 色五月亚洲| 91丨九色丨首页| 色婷婷丁香五月观看| 五月婷av| 人人舔人人色人人高潮| 欧美 色婷婷| 精品国产va久| 西西4r午夜剧场| 2025最新亚洲激情在线| 婷婷五月天A V| 免费日韩99| 日本乱子人伦在线视频| 婷婷五月丁香久久| 婷婷五月网图片区| 丁香婷婷综合五月天| 91性高潮久久久久久久久| 在线成人视频免费| 丁香五月天激情综合| 综合久久综合久久| 狠狠五月天| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | AV电影在线播放| 91要啪| 婷婷五月天六点丁香五月| 五月玖玖| 狠色狠色狠色狠色狠色网| 精品色色| 五月丁香在线观看| 五月婷丁香花| 大香蕉久久久久久久久| 亚洲综合久| 久久婷婷伊人| 久久探花91swag| 99亚州综合精品成人网| 五月开心婷婷极品激情| 91热视频| 一级性爱视频| 色六月视频| 欧美色碰| 婷婷五月天亚洲天堂| 日韩少妇内射免费播放| 五月婷婷色播| 日本va视频| 激情综合网站| 中文字幕永久在线| 五月婷婷九九热| 大香蕉啪啪| 99久久婷婷国产综合精品草原| 国产26uuu视频| 99热在线网站| 午夜大香蕉| 天天干天天爽天天操| www91精品| 五月天伊人网| 九九热在线视频| 婷婷五月激情四月综合| 97干在线看| 九九激情网| 四虎婷婷五月天| 碰超在线九色| 一二线视频 另类| 久久免费精彩视频| 久久婷婷亚洲五月天| 国产AV不卡福利| 婷色五月| 精品久久久人妻| 色综合久久88色综合中文字幕| 久久五月天免费网站| 人人爱人人草| 欧美日韩成人在线观看| 久久久五月四色| 九九伊人网| 亚洲传媒在线观看| 99国产精品久久久久久久久久久| 五月天色色色| 91操在线视频| 婷色五月天| 天天草婷婷五月| 九九综合色综合| 五婷婷综合网| 欧美成人AAA片一区国产精品| 久草狼人| 婷婷爱五月| 五月天色婷婷小说| 婷婷五月 丁香六月| 玖玖99免费视频| 日韩一级淫乱片一区二区三区| 久久草大香蕉| 四色永久成人网站| 亚洲综合五月天婷婷丁香| av人人操| 天天草天天日| 丁香六月亚洲综合| 丁香五月婷婷乱| 二人电影免费版在线观看| 影音先锋91| 五月婷婷黄网站大全| 97综合在线| 人人综合久| 激情五月婷婷网| 色色日韩无码| 丁香五月天激情网| 五月婷在线视频免费看| 色情婷婷五月天| 五月丁香六月婷婷手机无线| 丁香五月成人在线| 激情五月天色婷婷| 婷婷五月图片小说网| 丁香五月天殴美激情| 精品国产人人爱人人| 亚洲视频二区| 婷婷丁香视频在线观看免费| 五月丁香网av| 婷婷丁香第一页| 天天操夜夜啊| 天天爽人人爽| 老师高潮流白浆喷水的A片| 色婷婷影视| 人人爱人人草| 狠狠CAO日日穞夜夜穞AV| 色五月婷婷五月| 日本人妻A片成人免费看片| 中文字幕激情综合| 亚洲操B| 99国产在线| 婷婷五月天色| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 亚洲综合视频八| 碰碰碰97国产| 久色五月天| 中文字幕五月久久婷| 美国不卡视频| 91九九| 色八月婷婷| 思思视频这里是精品| 亚洲丁香五月综合| 97婷婷五月天| 激情五月丁香社区| 国产精自产拍久久久久久蜜| 3DAV亚洲香蕉久久 一区二区| 欧美日韩一区二区三区四区| 中文资源在线a| 91精品久久久久久77777| 五月丁香六月情| 一点色成人网| 色婷亚洲五月丁香| 天天日综合网射| 视色综合| 日本欧美在线| 中文婷婷狠狠| 久久久精品视频79| 激情五月丁香六月| 欧洲色| 久九男女天堂| 五月丁香婷中文| 五月六月激情婷婷| 国产精品成人AV在线| 久久综合激情| 日韩av网站在线观看| 天天操夜夜爽天天操| 婷婷综合网站| 91热99| 操操操av| 综合色播| 熟女少妇内射日韩亚洲| 91精品久久久久久久久| 国产精品-第3页-91JQ就要激情网91JQ5.JQJQ926.XYZ | 六月婷婷日| 可以看的AV| 色综合激情| 激情人妻蜜夜系列区| 色 五月 天 婷婷 丁香 九月| 五月丁香狠狠爱| 狠婷婷五月| 99久re热视频精品98| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 丁香激情久久| 婷婷中文字幕在线| 日本在线噜噜| 天天色情站| 91综合在线视频| 日韩六十路91性交电影| 激情丁香五月天| 强奸幻女毛片| 五月天婷a| 婷婷五月天激情四射| 狠狠狠狠狠草| 国自产拍偷拍精品啪啪一区二区| 婷婷开心深爱五月天| 婷婷精品性视频| 欧类av怡春院| 安息电影在线观看完整版| 美欧日韩国产成人在战| 在线成人视频免费| 人人干人人操人人摸| 日本欧美成人片AAAA| 97碰碰在线看视频免费| 殴美日韩成人| 人妻激情视频| 丁五月激情视频免费| 97人人妻人人艹| 天天摸天天舔天天爽| 99精品自拍视频| 97人操| 一起草性爱不卡视频| 日韩综合成人| 丁香五月亚洲天堂| 色婷婷小视频| 99热这里只有免费精品| 九一牛视频探花| www.婷婷,com| 在线综合啪| 五月婷久久在线| 99久久户外勾搭| 情欲综合网| 精品无码久久久久久久久| 狠狠色噜噜狠狠狠狠综合| 狠狠爱婷婷| 一级二级色大片| 五月草视频| 99欧美热| 开心婷婷五月| 婷婷色婷婷亚洲成人| 五月丁香啪啪啪综合网| 久热这里只有精品6官网亚洲| 开心五月激情网| 伊人婷婷五月天| 色欲久久综合| 五月婷久久| 专区无日本视频高清8| 九九热这里有精品23| 天天综合色| 成人久久天天x资源站| 色色热| 26uuuavcom| 97一区二区| 99在线精品在线视频| 精品视频网| 五月婷婷六月丁香在线| 色色婷婷五月天| 五月婷婷丁香五月| 色色五月婷婷丁香| 婷婷久久五月丁香| 无码人妻丰满熟妇奶水区码| 久久久久丁香婷婷五月天| 激情丁香五月AV| 亚洲综合婷婷| 开心综合激情综合| 97久久视频| 日本不卡一区二区三区| 色激情五月天| 欧美色狠婷久| 久热AⅤ| 婷婷午夜精品久久久| 可以免费观看的av网址| 99操不停| 97综合在线| 亚洲最大五月天成人网| 另类亚洲2| 五月丁香成人网| 欧美色色色色色色色| 婷婷99狠狠躁天天| 97超级碰| 五月天激情影院| 五月婷婷激情综合拍| 另类 在线| 九九久久综合| 久久大香蕉同僚| 婷婷舔| 色一情一乱一乱91Av| jiZZdr| 色五月在线视频观看| 99综合免费视频| 日韩一级淫乱片一区二区三区| 五月婷婷深深爱| 狠狠色性| www,8050,午夜三级| 五月婷婷激情在线| 99综合网| 色情五月婷婷| 五月丁香激情综合久久| 婷婷五月天亚洲图片| 色99自拍| 中文字幕无码成人电影| 青青久在线视频免费观看| 狼人婷婷久久| 国产26uuu| 99热网站在线观看| jiujiu热在线视频| 婷婷丁香五月麻豆| 97碰碰在线观看视频| 日韩AV免费电影在线播放| 丁香五月婷婷啪啪| 综合激情五月婷婷| 五月婷婷丁香五月| 丁香五月Av| 六月丁香婷婷天堂| 激情伊人六| 国产精品成人在线| www99精品| 丁香视频| 三级99热| 九九激情视频| CAoub青青超碰| 欧州婷婷五月天综合| CHINESE熟女老女人HD视频| 五月婷婷久久综合| 99热偷拍| 99热.com| 激情五月久久| 激情开心五月天| 日本三级黄色大片| 色综合色综合网| 久久精彩视频| 婷婷月综合| 婷婷丁香六月天| 婷婷五月天成人网站| 久久性爱网站| 久草xx性爱视频| 亚洲看av的网站| 婷婷亚洲激情在线观看视频 | www激情| 久婷| 五月天婷婷丁香| 午夜免费试看| 国产成人+综合亚洲+天堂| 综合色播| 丰满少妇猛烈A片免费看观看 | 久久五月天激情| 国产性av| 婷婷影院欧美| 97丁香婷婷| 欧美影院婷婷| 五月天婷a在线| 凹凸探花电影| 五月丁香花开综合网| www.五月天社区| 五月天婷婷人妻| 婷婷五月丁香基地| 久久作爱| 五月综合激情婷婷六月色窝| 五月婷婷 婷婷五月 一区二区 久久久| 99ER热精品视频| 亚洲综合五月天婷婷| 一级片无码| 九九热91| 丁香五月婷婷少妇| 思思国产99| 综合XX网| 疯狂做受XXXX高潮A片| 五月天网址在线刘玥| 美女被肏网站在线看| 久婷婷色| www.91有码.com| 99er精品视频| 亚洲综合激情五月久久| 2050人人操免费工开爱| 97色天堂| 亚洲激情视频网| 亚洲男女激情| 少妇大叫太大太粗太爽了A片| 激情小说色五月| 日韩色色一区| 婷婷五月天视频小说| 99热在线这里| 色色五月丁香| 情一色一乱一伦一91A| 激情综合色网| 色婷婷狠狠18| 人人摸人人干| 色欲五月婷婷| 人人看人人摸人人| 噜噜视频| 99色久| 五月丁香成人日| 久色视频| 亚洲综合网在线| 欧日韩成人| 六月丁香婷婷尤物| 激情五月婷婷五月| 亚洲熟女乱色综合亚洲网站| 色色色色av777| 伊人久久大香网| 丁香五月影| 久草天堂| 五月丁香婷婷免费视频| 久久色六月| 六月丁香啪啪啪| 新伍月婷婷| 超碰成人免费| 色色五月丁香婷婷| 激情综合网五月婷婷| 精品成人无码A片观看香草视频| www,色婷婷| 四月婷婷丁香| 亚洲无AV在线中文字幕| 丁香五月天导航| 丁香五月婷婷网| co超碰在线观看| 婷婷五月天美女| 久久丝袜婷婷| 亚洲人妻电影| 99九九精品| 夜夜操加勒比| 桃色激情婷婷伊人网| 欧美日韩99| 亚洲综合成人网站| 六月婷婷开心| 九色视频入口91| 天天综合色综合| 五月丁香六月激情| 九九综合视频在线观看| 97在线精品| 欧美性爱中文字幕| 日日夜夜狠狠| 色一情一乱一乱一区9| 九六五月天婷婷| 国产乱人偷精品人妻A片| 丁香五月婷婷色| 五月天婷婷影院| 碰97久久| 色色色欧美| 九九热中文| 久久久99久久| 五月婷婷激情综合| 九九这里有精品| 综合色播| 天天插天天干| 涩五月丁香| 2050人人操免费工开爱| 曰日爽日日操| 色播播婷婷| 亚洲va综合va国产va中文| 激情久久综合网| 婷婷在线播放| 天堂A∨在线| 色色日本| 五月丁香婷中文字幕 | 极品嫩草| 激情99| 日韩狠狠色| 色情综合| 色婷丨日丨天丨综合久久| 日韩AV无码影片| 五月天婷婷在线播放免费| 五月婷婷之综合激情在线| 五月天激情网页| 婷婷五月超碰| 91 九色 熟女| 色婷丨日丨天丨综合久久| 91丨九色丨首页| 五月丁香啪啪| 五月天婷婷激情网| 五月婷三级片| 色天堂A| 99视频色在线观看| 亚洲无码影音| www.久久久久久久| 白天AV月月| 丁香五月综合激情久久潮喷| 婷婷性爱影院| 日韩婷婷五月天| 91热久| 在线99热| 99热99这里只有精品| 26uuu偷拍亚洲欧洲综合| 激情伊人五月天| 99热精品一区| 久久人人九九| 91午夜婷婷狠狠久久综合9色| 欧美va在线观看| 九九熱最新視頻| 99爱操| 五月天久久婷婷| 五月天综合区| 九色PORNY自拍成人精彩视频| .精品久久久麻豆国产精品| 婷婷色情六月| www.精品99| 色99视| 成AV人片一区二区三区久久| 成人网址在线观看| 成年人99热| 91色综合| 毛片蕉地一二| 久久综合九色综合97婷婷| 五月天婷婷基地| 婷婷六月丁香1| 亚洲色图45p| 不卡在线超碰| 欧美性爱五月天| 色综合久久五月天| 五月婷六月丁| 深爱 五月天| 日韩欧美老妇性视频91久久久| 精品夜夜澡人妻无码AV| 激情五月天视频| 五月婷婷 激情五月| 久久ER视频com| 国产1区2区3区| 五六月婷婷久久| 99碰碰| 五月激情综合网| 天天干天天干天天干天天干天| 99这里有精品免费| 91狠狠综合久久| 色婷婷AV在线| 伊人婷婷91| 色婷婷丁香AV综合| 狠狠操狠狠色| 99婷婷狠狠成为人免费视频| 9999久久久久| 成人在线99| 色色五月丁香婷婷| www.91在线观看| 五月婷婷亚洲| www.婷婷五月| 五月激情综合美女久久| 六月婷婷九月丁香亚洲综合| 国产精品久久久60086| 婷婷五月天激情偷拍| 久久之人妻| 91色综合| 在线99热| 人人干人人干骚美女| 五月天婷婷av| 97干97色| 思思色播| 婷婷激情五月天在线视频| tingtingjiqingwuyue| 丁香五月婷婷久久综合激情网 | 婷婷五月激情中文字幕| 日日操夜夜爽| 99热在线观看精品| 欧美婷婷丁香五月社区| 丁香五月播播| 久久五月婷| 亚洲乱码日产精品BD| 九九在线精品| 综合久久十三| 日韩久久欧亚| 久青操| 97人人射| 天天在线久久综合 | www.天天日| 97操碰在线视频| 97人人搞| 日韩成人精品中文字幕| 欧美成人猛片AAAAAAA| 国产性av| www.久9| 超碰9| 婷婷欧美色| 天天日人人爽| 五月婷婷啪啪| 99热这里只有精品免费| 噼里啪啦完整版中文在线观看| 9视频在线成人网站| 日韩天堂久久| 4399成人黄A片| 婷婷五月天影视网址| 亚洲小视频| 五月天婷婷綜合院| 日本精品久久久久中文字幕| 欧美一级毛卡片无码| 色色色色区| 2015好吊操| 人人干AV| 超碰人人艹| 一本道在线电影| 97热超碰| 99热网站在线观看| 五月六月伦理| 久热超碰| 五月丁香综合中文| 五月激情另类| 五月天丁香成人| 无码人妻少妇色欲AV一区二区 | 操逼视频一区| 美国少妇性做爰| 4399在线观看免费毛片| 天天干狠狠操| 在线网黄| 五月天综合在线观看| 大香蕉婷婷丁香天堂AV| 久99婷婷色综合| 欧美五月婷婷| 亚洲六月色| 激情五月婷婷| 全高清无码视頻| 丁香五月日本| 久99视频| 99久久精品亚洲综合| oumeisesewang| www.色婷婷.com| 婷婷丁香五月天综合激情| 日韩久久视频| 色噜噜狠狠色综合日日| 国产精品第一国产精品| 久久九九综合| 色色热| 超碰人人摸AV| 色五月在线| 伊人久久婷婷| 3p久久| 五月天激情视频五月天| 亚洲精品又粗又大又爽A片| 久久东京热婷婷五月| WWW,婷婷,COM| 中文字幕视频色婷婷| 色五月天.con| 丁香六月啪啪| 玖玖五月丁香| 久久久久久18| 涩婷婷五月天| 激情五月成年| 狠狠色丁香婷婷基地| 亚洲色网络| 97碰碰视频在线观看| 九九热精品| 爱狠射| 久狠日av| 精品九九九久| 婷婷五月天日日日干干干| 婷婷91| 色情五月天小说| 婷婷五月天黄色| 激情五月天啪啪| 色婷婷电影网| 啪啪东京热| 久久九九热视频| 婷婷五月日本| 99这里只有精品|v| 五月婷婷亚洲综合在线| 婷婷五月天电影区小说区| 婷婷5月色| 91九色精品女同系列| 婷婷欧美综合| 91碰碰视频| 欧美日本黄色| 色综合婷婷| 久99久在线| 久久五月综合| Se.婷婷五月天| 国外亚洲成AV人片在线观看| 亚洲激情电影五月天色婷婷丁香一起草 | 丁香午夜天| 丁香五月1页| 日韩成人网址| 99色1| 99热在线观看成人| 亚洲色99| 狠狠爱激情网| a在线观看| 26uuu亚洲欧美另类| 丁香激情综合| 99久久五月婷婷| 99自拍视频网站| 色噜噜狠狠色综合日日| 91超级碰碰碰| 色五月天视频| 在线99精品| 一本久道综合色婷婷五月| 亚洲国产精品成人免费一区久久久在线观看AAAA | 五月丁香无码| 玖月婷婷爱丁香| 亚洲字幕AV一区二区三区四区| 色综合色色色色色| 玖玖五月丁香| 激情综合婷婷| www,婷婷| 超碰免费成人| 4399啪啪视频| 五月天综合| 五月天日日操夜夜操 | www.色五月| 婷婷区日本| 色婷婷五月天无码视频| 成人在线精品| 色综合网综合| 99热青青草| 九九九九精品精| 色九九九九| 五月久久噜噜| 天堂综合久| 中文字幕日产A片在线看| 亚洲色99| 十月丁香婷婷| 4399高清无码视频| 性做久久久久久久免费看| 五月婷婷69| 五月天第四色开心色播| 婷婷色六月| 精品国产AV色一区二区深夜久久| 思思久久精品| 丁香五月老师| 99riAV国产精品视频| 日本乱子人伦在线视频| 91色涩| 色五月综合婷婷| 久/久精品99看9| 丁香婷婷老司机久操| 99热在线观看| 毛片新网地| 亚洲国产色色| 婷婷五月天伊人在线| 国产黄色一级片| 亚洲天堂婷婷丁香| 99热亚洲精品| 91人碰| 狠狠操狠狠做| 亚洲色婷婷激情| 性视频久久| 91seAV| 国产午夜成人AV在线播放| 五月丁香成人| 亚洲热视频在线| 另类国产综合| 日本色噜| 91天天操天天干天天射| 小泽玛利亚视频一区二区| 婷婷在线中文字幕| 色色国产| 丁香五月天激情综合| 99九九在线精品热动漫| 思思热99热| 色狠狠色狠狠| 涩涩五| WWW.五月天9999| 99热99干| 五月色丁香| WWW·色色色·COM| 无码一级片| 天天肏天天舔AV| 中文字幕在线aⅴ免费观看| 婷婷开心深爱五月天| 亚洲成人无码网站| 久久九⑨| 99在线小视频| 婷婷五月欧美| 色婷婷亚洲综合网站| 日本三级成人秘书精品片| 天天操夜夜操| www.久久| 一本道在线电影| 四LLL少妇BBBB槡BBBB| 色综合色综合网| 丁香五月成人| 婷婷综合久久| 亚洲乱码日产精品BD| 丁香激情网| 色色婷| 少妇熟女视频一区二区三区 | 欧美性爱丁香五月| 激情综合色婷婷啪啪五月天| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 精品无码久久久久久久久| 任你艹| 蜜桃人妻无码AV天堂三区| 少妇大叫太大太粗太爽了A片| 99精品热| 热91久| H亚洲| 久久九九re热| 人妻九九九九| 色五月婷婷婷婷婷婷婷婷婷婷| 亚洲综人色综网| 精品一二三区视频立| 五月色欧洲| 丁香五月激情婷婷| 色色色热| 91中文在线| 中文字幕按摩做爰| 在线播放 精品| 狠狠久久婷婷| 色婷婷五月综合| 五月色情婷婷开心五月色情| 丁香五月在线观看完整版| 97色色综合| 综合婷婷久久| 性爱综合网| 天天视频精品9| 任你搞网站| 99热精品少| 人妻VideOssS人妻高清| 超碰网站在线观看| 色情五月丁香| 久久久久九九九九视屏小说88| 91久久免费| 天天干,天天舔| 色婷婷亚洲在线| www.日本91| 久久这里只有精品热在99| 狠狠插.com| 欧美99视频| 春色激情第四色| 亚洲操B| 九九这里只有精品| 国产亚洲99久久精品熟女| 激情五月天视频| 色综合网综合| 激情综合五月天| 超碰婷婷色| 99在线视频播放| 天天射天天射一道本日本社区| 人人摸人人澡人人| 中文字幕欧美日韩VA免费视频| 牛牛色av| 琪琪理论片| 狠狠色五月天| 乱精品一区字幕二区| 久久婷婷五月天激情四射| VA国产在线综合网站| 中文成人在线| 成人αV视频免费观看| 五月丁香六月婷婷啪啪| www.热99热| 狠狠干夜夜干| av成人在线播放| 中文aV网| 色婷婷www| av在线不卡播放| 婷婷久久视频| 婷婷激情综合| 超级97碰碰| 精品无码色欲AV| 五月激情啪啪啪| 丁香五月婷婷亚洲天堂| 婷婷五月天天| 丁香五月激情啪啪| 丁香六月婷婷社区| 91大屁股| 欧美大肥婆大肥BBBBB| 欧美丁香五月97色| 无人精品在线视频| 九月婷婷在线视频| 久久亚洲网| 五月婷婷片| 九热久| 综合成人小说婷婷| 97伦乱| www.伊人天堂偷偷婷婷| 久热只有精品| 激情久久五月天| 大天天伊人| 月丁香久久久| 九玖欧洲亚洲| 免费无码毛片一区二区A片| 天天操天天爱天天日| 天天操中文字幕| 绿色小导航AV| 日韩无码色色| 五月色婷丁香| 婷婷丁香五月综合激情视频| 日韩综合成人| 人人摸人人射| 少妇性按摩无码中文A片| 伊人大香五月天| 精品人妻伦一二三区久久| 激情综合亚洲| 久色网| 日本色色图| 五月天啪啪视频| 婷婷六月色开| se99视频| 久青青久| 五月婷色| 欧美综合激情五月丁香| 日本欧美成人片AAAA| 五月婷久久| 四川女人毛多水多A片| 婷婷五月开心中文字幕色| 国产99久久久国产精品免费看| 99热成人精品| 亚洲亚洲人成综合网络| 五月婷婷免费在线观看| 97搞在线| 99热精品在这里| 久久综合播放| 丁香色色色| 一起草无码视频| 精品一二三区久久AAA片| 无码人妻一区二区三区四区| 色亭亭影园| 婷婷五月18永久免费视频| 久久五月天激情婷婷| 婷婷丁香五月激情密臀av| 狠狠色狠狠| 久99久视频| 欧美综合激情五月| 香蕉五月婷婷| 五月丁香好婷婷A片网| 激情久久久| 人妻丰满精品一区二区A片| 五月天婷婷青青草| 第五婷婷伊人丁香| 91碰碰碰| 99 这里只有精品| 99综合成人视频在线观看 | 那里有AV网址| 先锋影音av色五月天资源站| 丁香婷婷成人网| 99热爱爱干干日| 福利视频在线播放| 情趣视频66| 99热最新| 666555。COm毛片| 99热综合| 日韩三级片一区二区| 国产精品成av人在线视午夜片| 人人爱人人草| 99精品视频在线6| 中文字幕成人日韩| 大香蕉520| 色播丁香婷婷五月激情| 99re热在线观看| 亚洲无码99| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 亚洲第一综合| 久久这里面只有精品视频| 成人精品网站在线观看| 99热久| 色五月天本日| 六月色婷婷色| 人人操大| 另类图片五月天| 人人操AV| 丁香婷婷少妇| 国产综合色婷婷精品久久| 亚洲第一成人无码A片| 日本99在线| 五月久久亚洲| 婷婷五月综合在线| 免费观看高清无码| 99在线免费视频| 婷婷五月综合网| 亚洲综合网激情小说| 七七九色| 丁香婷婷六月| 日本99热| 色伊人婷婷| 久久丁香久久| 26uuu美女三级视频| 国产97色在线 | 日韩| 亚洲日韩操B| 99热这里精品| 九九热最新| 丁香五月色五月婷婷宗合| 噜噜色天天开心| 光棍影院日韩精品| 丰满少妇猛烈A片免费看观看 | aV直接看| 五月天色五月| 五月婷中文字幕| 天天干夜夜想| 99re这里只有精品首页| 天天射影| 大香蕉啪啪| 激情五月综合第一页| 亚州欧美黄色电影| 国产肥白大熟妇BBBB视频| 伊人五月天在线| 色婷婷综合影院| 99re8这里只有精品99re8热视频| 狠狠狠激情网| 秋霞学生妹一二级| 成人短视频在线观看| 91精品91久久久中77777久久玖玖九九| 97日本操| 丁香五月花影院| 国产成人精品一区二三区熟女在线| 五月激情偷拍| 大香蕉五月丁香| 操逼巨乳91| 人人草人人看| 五月综合婷婷五月| 亚艹艹| 天天干天天叉| 激情网综合| 丁香激情综合| 婷婷五月综合国产精品| 欧美成人AAA片一区国产精品| 五月天成人免费视频| 色色色色色色色色综合网| 婷婷五月天影院| 日韩啪啪视频| 国产 码在线成人网站| 99啪啪视频| 99日韩| 久久久久这里只有精品| 高清无码视频网址| 思思热视频| 久色| 亚洲色无码A片一区二区麻豆| 欧美大片| 五月天丁香婷婷久久九| 日本色99网站| 97色综合| 色原狠狠综合| www一起操| 国产 亚洲 在线| 日本久久网| 狠狠88综合久久久久噜噜噜| 五月天成人在线视频丁香| 深爱激情九九五月天 | 婷婷操逼| 青柠影视免费高清电视剧| 538在线精品| 色操综合| 丁香婷婷超碰 | 久久天堂精品| AV在线中文| 色婷婷五月六月丁香综合视频| 亚洲色婷婷99一9|| 久久精品66| 色综合九九| 久久98| 婷婷丁香五月天综合在线日韩| 国产五月天欧美色| 精品人妻久久久久久| YJLZZJLZZ亚洲乱熟无码| 开心激情网五月天| 亚洲日本韩国| 日韩天堂久久| 超碰人人艹| 丁香成人综合| 国产无套精品一区二区| 五月丁香花视频| 亚洲九九夜夜| av婷婷丁香| √天堂资源在线人妻熟女| 欧美色色色色色色色色色色影视| 婷婷丁香激情| 26uuu国产激情视频| 狠狠色噜噜狠狠色噜噜噜999| 婷婷五月情色| 天天操人人干| 五月丁香色婷婷| 9 7总站超级碰免费视频| 干一干xxxx| 蜜乳.comcom| 婷婷色狠狠| 五月婷婷综合激情网| 国产成人精品一区二三区熟女在线 | 日本97人人| 中文字幕在线日亚州9| 五月丁香五月天现场视频| 欧美99视频| 无人区码一码二码三码医生系列| 婷婷色五月天色色| 人妻射精AV| 五月丁香六月婷婷在线| 可以免费观看的AV| 青青草网武则天| 这里只有视频精品| 开心五月婷婷| 欧美激情综合五月色丁香| 大香蕉五月| 五月综合激情综合久| 亚洲区视频| 香蕉99网| 思思热久在线观看视频| 伊人五月综合网| 五月丁香婷婷五月色| 婷婷久久综合久| 这里只有精品1| 无码激情AAAAA片-区区| 97人人操在线| 五月婷婷六月丁香综合| 国产99久久久国产精品免费看| 国产色网站| 婷婷丁香在线播放| 免费无码毛片一区二区A片| 99综合自拍| 99视频网| 国产XXXX搡XXXXX搡麻豆| www.五月婷婷久久.com| 九九热只有精品| 99热在线观看| 久久久久久久综合狠狠综合| 国产精品国产| 激情婷婷22月间| 夜夜骑日日夜夜| 婷婷亚洲综合| 久久婷婷啪啪视频| 激情婷婷六月天| 久久3级片| 99 这里只有精品| 狠狠操综合| 夜夜撸夜夜骑| www.97碰碰com| 激情六月天婷婷| 97成人丁香| 天天色天天噜| 中字幕视频在线永久在线观看免费| 日韩影院三级| 99热精品99| 91丨九色丨老农村| 99亚洲日韩| 精品婷婷丁香五| 欧美英丁香开心快乐六月天网| 丁香激情网| 另类色视频| AVDV久久| 7月婷婷六月丁香| 91久久久久久| 亚洲综合久| 激情久久综合| 婷婷久久亚洲| 九九热九九| 丁香婷婷性爱| 亚洲综合在线视频| 国产激情综合| 99久久6| 婷婷丁香五月天哟啪| 色五月婷婷丁香五月| 九九人人操| 激情五月天 婷婷| 亚洲无码成人网| 国产激情久久久| 天天草天天爱| 91久久日日| 五月婷av| 99熟女啪啪视频| 久久婷色|