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

看板Soft_Job作者 (高個子)時間12年前 (2011/08/19 03:09), 編輯推噓6(6059)
留言65則, 18人參與, 最新討論串12/18 (看更多)
※ 引述《yoco315 (眠月)》之銘言: : ※ 引述《yy938559 (高個子)》之銘言: : 實在看不下去。 : 首先一間公司如果能作 code review 的人沒幾個,這種公司不待也罷。 : 因為 code review 並不難,如果一間公司沒幾人能作 code review, : 那除非整間公司都是白痴。 有能力做code review的人本來就不多啊. 這會很奇怪嗎? 整間公司都程度不好也不是沒有吧. : 程式碼的架構,絕對可以靠訓練達成, : 短期有短期訓練,長期有長期的體驗, : 《Solid Code》《Code Complete》《Code Craft》《Design Pattern》 : 都是可以在短時間裡面提昇程式碼品質的訓練, 短時間可以提昇? 你真的了解你說的東西嗎? 這些東西沒有個10年經驗, 不要說爐火純青. 連要決定要用在那裡都會有困難. 還提昇咧... : 但是你說的沒錯,這些東西無法靠 code review 完成,為什麼? : 「因為 code review 根本不該看這些」 你該不會以為code的架構是Visio/PowerPoint隨便幾個矩型, 塗上 幾個顏色就是架構吧? 還是像用UML一樣, 以為畫幾個diagrams, 可以產生insert/delete/update, 就是架構? classes/methods的安排都是在coding時產生的.可以說是依經驗加一點 推理在人腦中runtime寫出的. 那些在沒有寫code前, 就說程式架構(指程式碼的安排)巳經設計好的, 不是太天真說大話, 或者騙子, 不然就是傳說中萬中選一的那位. 所以... code review 不review架構要review什麼? : 就算你真的在 code review 的時候檢討架構好了,也保證有用, : 除非你的同事們根本沒有心想聽,那不管作什麼都沒用, : 但是有很多人不是不想、不是不能,他們只是不知道可以這麼作。 : code review 不看架構不看 style,看的是盲點跟一格洞, 語法不好, 演算法不佳, 邏輯不周, 或不夠了解tools的特性而使用不當等問題, 這些問題花點時間, 通常就可以處理. 如果真的處理不來, 也可以問別人. 可以處理/問人的東西, 又何需review呢? 沒有人會故意寫爛code的, 是因為實在handle不了, 才會出怪招. 而程度不夠的人, 每天所產生爛code的速度, 遠超過你能review的. 不要讓這種人繼續寫code, 才能加速開發的速度不是嗎? 所以, 也不需要review爛code啊! 停止產生才是正道. 而架構reivew? 我說實際一點好了. 以你的經驗, 如果review一個程度不夠的人, 如果他能follow的話, 那你也不用混了. 不能follow的話, 那何必浪費時間reveiw呢? : code review 明明就是實務的東西, : 你怎麼會以為他是學院派,實在令人很無言。 有經驗的人都知道, 遇到一個困難時, 有時候花時間努力也不見得能處理. 這和人的經驗/資質/能力/運氣/靈感是有關的. code reivew 在我的觀點就是這樣: 除了review架構之外, 其他東西是不需review的. 不是這方法不對. 而是在現實世界中, 你很難(應該說不可能發生)同時找到一個有能力review 又同時有一個有能力做相對應改變的人. 如果有這樣子的配對, 以這樣子的程度, 那可能還需要review? 不實用的東西, 不是學院派的話, 難道是實務派? 我知道又要被噓了. 沒辦法我的眼界就只到這裡. 如果鬧了笑話, 請各位多包涵啊. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.69.151.170

08/19 03:27, , 1F
提昇不等於爐火純青...學英文單字可以組句子,但學英文
08/19 03:27, 1F

08/19 03:27, , 2F
單字不能馬上就會寫文章。:P
08/19 03:27, 2F

08/19 03:28, , 3F
問人也是code review 的一種型態啊:P
08/19 03:28, 3F

08/19 03:28, , 4F
寫好一段code拿去問人這合不合用,有沒有問題,也是一種
08/19 03:28, 4F

08/19 03:29, , 5F
code review。你不是認為code review沒用,只是你認定的code
08/19 03:29, 5F

08/19 03:29, , 6F
review 已經是一種特化的形式吧。:P
08/19 03:29, 6F

08/19 03:30, , 7F
codereview 要減少的就是「花點時間」的時間成本,
08/19 03:30, 7F

08/19 03:31, , 8F
做這麼久了也都知道,為一隻白痴bug花上很多時間的狀況,
08/19 03:31, 8F

08/19 03:31, , 9F
我認識的神人,都是在寫程式前就大概規劃好架構
08/19 03:31, 9F

08/19 03:31, , 10F
那時如果有人可以pair或review,有機會很快解掉。
08/19 03:31, 10F

08/19 03:32, , 11F
賺得就是這個東西。ps.我同意架構需要review,但那是design
08/19 03:32, 11F

08/19 03:32, , 12F
review. 跟code review 有關但不完全說的是code review
08/19 03:32, 12F

08/19 03:32, , 13F
我第一次看到,真的是汗涔涔淚潸潸可以形容,
08/19 03:32, 13F

08/19 03:33, , 14F
原來程式是要這樣寫,而不是一開始就埋頭下去開始 coding
08/19 03:33, 14F

08/19 03:34, , 15F
這對我後來寫程式有很大幫助,一開始的規劃設計是很重要的
08/19 03:34, 15F

08/19 03:34, , 16F
你沒見過,不代表沒有人有辦法
08/19 03:34, 16F

08/19 03:35, , 17F
看某些書是真的會有幫助,像 Writing Solid Code~
08/19 03:35, 17F

08/19 03:36, , 18F
原來樓上的code是在設計階段就想好了. 真的配服啊.
08/19 03:36, 18F

08/19 03:36, , 19F
這本書很實務的,不是像系統設計那類專打高空的書
08/19 03:36, 19F

08/19 03:40, , 20F
我是說架構啊 我寫二十年的 code 了 我想我有資格說吧?
08/19 03:40, 20F

08/19 04:01, , 21F
你所謂的"不實用"的事,在Google能做,在我任職的公司也能做
08/19 04:01, 21F

08/19 04:01, , 22F
不知道"不實用"在哪?
08/19 04:01, 22F

08/19 04:02, , 23F
這感覺怎麼很像寫機器語言的人在說寫OO不實用只是打高空?
08/19 04:02, 23F

08/19 04:29, , 24F
你高興就好.. 反正感謝老天我不用跟你還有L共事 -_-
08/19 04:29, 24F

08/19 04:30, , 25F
無知真的不打緊,肯學是重要的,態度有病的話,永遠不會進步
08/19 04:30, 25F

08/19 04:31, , 26F
code review 對你們這種人來說的確是一點用也沒有
08/19 04:31, 26F

08/19 04:31, , 27F
而且我懷疑有任何東西對你們有用.. @@
08/19 04:31, 27F

08/19 05:58, , 28F
初架構應該設計階段就要完成, CRC不就是這種用途 @_@
08/19 05:58, 28F

08/19 05:58, , 29F
寫程式的忌諱不就是搞不清楚要寫什麼就動手嗎@_@""
08/19 05:58, 29F

08/19 06:02, , 30F
我以為 code review 就是檢驗那段code是否做到該做/想做的
08/19 06:02, 30F

08/19 06:05, , 31F
要不要做是另一回事, 絕大多數程式設計師都能讀程式碼(吧!?)
08/19 06:05, 31F

08/19 07:20, , 32F
唉, yoco315你回不下去, 就別再對人了.
08/19 07:20, 32F

08/19 07:27, , 33F
我只是想說, 有心學老鳥的寫法可以自己開source看,不是
08/19 07:27, 33F

08/19 07:28, , 34F
一定要靠code review...
08/19 07:28, 34F

08/19 07:30, , 35F
無心學的即使有code review也不會學到甚麼, 只是會氣死
08/19 07:30, 35F

08/19 07:30, , 36F
老鳥吧...
08/19 07:30, 36F

08/19 08:24, , 37F
我比較認同這篇的想法.實務上跟理想上就是有落差的.
08/19 08:24, 37F

08/19 08:25, , 38F
Code Review是政治問題,管理問題,而不是技術問題.
08/19 08:25, 38F

08/19 08:26, , 39F
設計能在開始幫助很大.但還是要依照第一線士兵的意見來調整.
08/19 08:26, 39F

08/19 08:37, , 40F
其實應該說是每個人在職場生涯中經歷的環境不同吧
08/19 08:37, 40F

08/19 08:40, , 41F
我突然覺得這也沒什麼好說的,無論是 MVC 或 code review
08/19 08:40, 41F

08/19 08:41, , 42F
對於想渴望讓自己和團隊提昇, 而使用這些方法收到成效,它
08/19 08:41, 42F

08/19 08:43, , 43F
這些方法及制度, 就是有用而且是必需的,但是對於己經工作
08/19 08:43, 43F

08/19 08:46, , 44F
十幾廿年, 經過千錘百鍊得到一套自己有效的工作哲學的人
08/19 08:46, 44F

08/19 08:48, , 45F
這些不過是不實用而旁生的支節而已, 在其經驗與哲學中反正
08/19 08:48, 45F

08/19 08:49, , 46F
引進方法建立制度也不能解決問題,反正找到對的人就好了嘛~
08/19 08:49, 46F

08/19 08:51, , 47F
這篇太扯了,連Design Review跟Code Review做啥都不知道
08/19 08:51, 47F

08/19 08:53, , 48F
我完全同意yoco315的推文....sign
08/19 08:53, 48F

08/19 08:55, , 49F
我建議還是到有點規模的軟體外商磨練看看比較好
08/19 08:55, 49F

08/19 08:56, , 50F
哪有人等到寫Code了才做Design Review,你叫幾十個工程師
08/19 08:56, 50F

08/19 08:56, , 51F
瞎子摸象喔
08/19 08:56, 51F

08/19 09:22, , 52F
話說我完全能體會 yoco315 感謝老天的心情
08/19 09:22, 52F

08/19 10:05, , 53F
這很像之前棒球在吵要不要養農場然後有人一直舉
08/19 10:05, 53F

08/19 10:05, , 54F
有農場的球隊也不一定打得進世界大賽一樣...
08/19 10:05, 54F

08/19 11:17, , 55F
沒有2怎樣噓?
08/19 11:17, 55F

08/19 13:59, , 56F
新手看不懂的code無法被維護。
08/19 13:59, 56F

08/19 17:17, , 57F
code review都在review架構,只能說貴公司的主管都在混..
08/19 17:17, 57F

08/19 17:18, , 58F
上面的人都在抱著千錯萬錯永遠是下面的人錯的心態...
08/19 17:18, 58F

08/19 20:36, , 59F
你大概不知道你回文的對象是誰...
08/19 20:36, 59F

08/19 21:54, , 60F
就算閉嘴看起來像傻瓜,也比開口被確認你是笨蛋好 馬克吐溫
08/19 21:54, 60F

08/20 00:40, , 61F
newjoy的推文士紙元PO嗎?
08/20 00:40, 61F

08/20 18:24, , 62F
小弟是真的從uml開始寫code 的,幫助很大
08/20 18:24, 62F

06/20 11:37, , 63F
這位不是非常自負、目空一切的程式師,再不就是程度太差,
06/20 11:37, 63F

06/20 11:38, , 64F
實務經驗又不足,才會把寫出好的codes想得那麼艱難
06/20 11:38, 64F

06/20 11:40, , 65F
說真的,只要有一點經驗,專案時程不太趕,真沒那麼難的
06/20 11:40, 65F
文章代碼(AID): #1EJMDuIE (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 12 之 18 篇):
文章代碼(AID): #1EJMDuIE (Soft_Job)