Re: [轉錄] Code Review: 大家都應該做的事情

看板Soft_Job作者 (溺於黑暗)時間13年前 (2011/08/17 21:09), 編輯推噓2(2027)
留言29則, 7人參與, 最新討論串8/18 (看更多)
※ 引述《thinkniht (不下棋=.=)》之銘言:

08/17 12:28,
其實講這麼多 實務上也沒啥用 很多RD心態是可以動就好了 XD
08/17 12:28

08/17 12:28,
遇到這種 RD 其實還滿無奈的 Code Review 做再多也沒用 哈
08/17 12:28
怎麼會沒用.看到這麼多review無用論. 管理階層就不要隨便推行一個有問題的政策啊. 若是真要推行,也可以搞清楚問題癥結點在哪裡? 是政策沒有講清楚? 推這個政策只是新官上任講好玩而已. 規則配套沒想好? 有review責任卻沒獎勵/懲罰. 還是有觀念有落差? review的標準在哪裡? Code Review的癥結點就兩個 a.有多認真? b.誰來Review? 有多認真?(要檢查到什麼程度?) 1. 標準嚴格了,被Review的人好一點覺得很沮喪,差一點覺得被找碴。 2. 標準鬆了,問題沒有解決,根本就是得過且過,上下交相賊,橡皮圖章,真的浪費 工時。更徒然傷害到那些認真Review的人。 3. Review一次,改完上傳之後要不要再來Review?(這叫Review的Review,說不定還 會有Review^3)一個問題是否要無限制的完美下去?什麼叫完美?是設計的不完美?效能 的不完美?風格的不完美?還是人格的不完美(就是看你不爽啦)? 4. 其實終究到底就是Quality Assurance的問題,是不是白箱黑箱都測過了就算過? 如果連規格都不清楚,規格每天在變,怎麼會有測試(總要知道終點在哪裡才知道差多少 吧)。既然連測試都過不了,出貨都有問題,怎麼可能做到Code Review這一層。 誰來Review? 1. 資淺的工程師自己寫code都有問題了,哪還有標準跟水平去Review別人的Code。這 其實呼應到上述的"有多認真"。如果只是檢查命名規則,記憶體有沒有釋放,變數有沒有 初值,那就簡單得多大家都能做。甚至請資工系工讀生來照表操課都可以。 2. 資深的老手一定是負責重要的工作,自己都沒空了,還要撥時間來改考卷。同樣呼 應到上述的"有多認真"。改鬆了,只是敷衍。改嚴格了還要被同僚討厭。大家都是出來混 ,何必要平白為了主管的政策多樹立一個敵人。 3. 若是用一個老手配一個新手的方式,是否有足夠的老手?每個老手的風格不一樣, 會不會反而用壞習慣帶壞新手? 4. 若是採用定期開會review一個盯一個像火車一樣的方式,菜鳥釘到老手以後是不想 混了是吧。若真有問題卻找不到問題,反而變成菜鳥開會被罰站的窘境(你到底有沒有認 真看啊?)。 -- "May the Balance be with U"(願平衡與你同在) 視窗介面遊戲設計教學,討論,分享。歡迎來信。 視窗程式設計(Windows CLR Form)遊戲架構設計(Game Application Framework) 遊戲工具設計(Game App. Tool Design ) 電腦圖學架構及研究(Computer Graphics) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.160.92.202 ※ 編輯: NDark 來自: 1.160.92.202 (08/17 21:09)

08/17 21:49, , 1F
這篇的現實面...還真完整...哈哈
08/17 21:49, 1F

08/17 22:03, , 2F
令一個更現實的問題"code寫不好會丟飯碗嗎?不會?好繼續"
08/17 22:03, 2F

08/17 22:04, , 3F
另一個也現實的問題"code寫得好會怎樣?會有更多code要寫!"
08/17 22:04, 3F

08/17 22:12, , 4F
很實際啊.老闆其實不要你寫好.只希望能快點出貨就好.
08/17 22:12, 4F

08/17 22:12, , 5F
只好推了 XDD
08/17 22:12, 5F

08/18 01:27, , 6F
code review 與其說是制度面,倒不如說是RD防止自己出包的
08/18 01:27, 6F

08/18 01:27, , 7F
一種手段會更好推行。:P
08/18 01:27, 7F

08/18 01:28, , 8F
標準鬆了不一定就不能解決問題,軟體開發有多少東西是可以
08/18 01:28, 8F

08/18 01:28, , 9F
嚴格執行的?unit test ? 連build script都不見得有好好寫到
08/18 01:28, 9F

08/18 01:29, , 10F
每個條行。就是這種一定要很嚴格才能解決問題的想法,才會
08/18 01:29, 10F

08/18 01:29, , 11F
導致你後面講得那些問題。:P 但事實上它的價值是介於你
08/18 01:29, 11F

08/18 01:29, , 12F
舉的這兩個上下界之間的。要實施到什麼程度也看團隊不同而
08/18 01:29, 12F

08/18 01:30, , 13F
不同。台灣還是很多老闆很看重程式碼品質跟產品質量的,
08/18 01:30, 13F

08/18 01:31, , 14F
而只要搭配好得行銷跟知名度,兩者加成所獲得的獲利也很可觀
08/18 01:31, 14F

08/18 01:31, , 15F
那種只要能出貨就好得思維的確是佔產業的多數,但不代表那
08/18 01:31, 15F

08/18 01:31, , 16F
就是唯一的思維,也不代表那就是業界唯一的現象。:P
08/18 01:31, 16F

08/18 01:32, , 17F
而且事實上,只要能出貨就好也不是不會造成災難,有太多例子
08/18 01:32, 17F

08/18 01:32, , 18F
是出貨之後被退貨或出大包的,真的是能出貨就好嗎?:P
08/18 01:32, 18F

08/18 01:32, , 19F
還是只是賭一個運氣?(笑)
08/18 01:32, 19F

08/18 01:34, , 20F
出貨是底標,完美可擴充性好維護好讀的系統是最高標,
08/18 01:34, 20F

08/18 01:34, , 21F
我們通常只是在底標跟高標之間作個取捨而已。
08/18 01:34, 21F

08/18 01:34, , 22F
當然抓著底標不放會倒楣的地方就是哪天環境要求變高,底標變
08/18 01:34, 22F

08/18 01:35, , 23F
高,就等著砍掉重鍊或者兩手一攤說作不到。
08/18 01:35, 23F

08/18 01:36, , 24F
沒有人說一定要追求最高標,但是把目前的狀況向上提昇一點
08/18 01:36, 24F

08/18 01:36, , 25F
留一點buffer面對以後,不是什麼壞事。
08/18 01:36, 25F

08/18 01:36, , 26F
不過沒看過誇張/讀不懂的漿糊code的話,的確是看不出來他的
08/18 01:36, 26F

08/18 01:37, , 27F
價值在哪裡,畢竟現在寫code的人再怎麼差也有基本的觀念了。
08/18 01:37, 27F

08/18 10:15, , 28F
....可不可以直接回文啊
08/18 10:15, 28F

08/18 10:18, , 29F
你高興看你就看,不高興看就跳過吧。:-P
08/18 10:18, 29F
文章代碼(AID): #1EIxrnPf (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 8 之 18 篇):
文章代碼(AID): #1EIxrnPf (Soft_Job)