→ robler: 像那種空幾行 {}的位置這種小事,讓IDE來處理不就好了 02/18 17:30
→ littlethe: 那時候的standard,是細到規定在什麼狀況下要空幾行 02/18 17:32
→ littlethe: 所以要人工判斷...因為不是一直固定空幾行 02/18 17:33
推 s0914714: 只能說定standard的人太閒了當然這種東西有共識就好 02/18 17:40
→ littlethe: 那standard我記得是厚厚一疊的,所以他們自己也沒遵守 02/18 17:43
→ littlethe: 弄到最後,也只是某個人講什麼,說了就算 02/18 17:43
推 rupcj8: 這已經不叫訂standard了吧XD 根本就是自high 02/18 18:00
推 TW0981081007: 以我的專案經驗來說,是匯入code style template, 02/18 18:08
→ TW0981081007: 仍有文件定義,只是被簡化,同事間約定默契即可。 02/18 18:09
→ Obama19: 你寫成if(){不空格我一定會發飆 這根本common sense 02/18 18:16
→ Obama19: 啥都不空格的CODE 只會讓別人覺得你剛學程式的大一生嗎 02/18 18:17
→ TW0981081007: 樓上,其實有短碼競賽啦,當然工作不能這樣玩。 02/18 18:19
推 tnav: 匯入Naming Guideline讓IDE處理 +1,誰知道誰的標準才是準的 02/18 19:02
→ tnav: 有統一的template,就算對方忘記空格也只要順手幫個忙就好 02/18 19:03
→ tnav: code review的用意應該不是為了要看coding standard ... 02/18 19:07
→ fgh81113: 你寫成if() {空格我一定會發飆 這根本common sense 02/18 19:09
→ cha122977: 統一用一個ide就好…另外code review不是在看這個的吧 02/18 19:23
→ cha122977: ^ style template 02/18 19:24
→ littlethe: 我也支持用ide處理就好,但那時候公司不用ide處理,變成 02/18 19:56
→ littlethe: 很多事是人為去判斷,而且又規定得很細很富雜 02/18 19:59
→ littlethe: 我知道code review更大的好處是了解別人的code和討論 02/18 20:01
→ littlethe: 但很多時候爭議就從這邊來,有人就會惡性批評 02/18 20:03
→ littlethe: 給的意見真的不錯的話,也就算了,有人給的意見反而比較 02/18 20:06
→ littlethe: 爛,例如叫我不要用function,因為他不會看function 02/18 20:06
→ littlethe: 某樓也示範了一個惡性批評的例子,還人身攻擊,這樣的人 02/18 20:10
→ littlethe: 蠻多的,這並不會讓code的品質更好,只會讓氣氛更糟 02/18 20:11
→ Axcic: code review的重點不在此 只會著重在這些的真的很無聊 02/18 20:40
→ Obama19: 笑了 舉得例子不好還說別人惡性批評 你怎不去想想自己為 02/18 20:44
→ Obama19: 何不空格 寫code都寫給自己看懂就好 這種人更多 02/18 20:44
→ littlethe: 那你們覺得code review的重點為何呢?來聊聊吧 02/18 21:02
推 clarkman: 我也是覺得遇到不好相處的人合作比較難過.... 02/18 21:36
→ TW0981081007: 聊聊。 02/18 21:36
→ TW0981081007: 我經歷的 code review 還有讀書心得。 02/18 21:36
→ TW0981081007: code review 的部分偏向抓版控上說明自己如何解這 b 02/18 21:36
→ TW0981081007: ug. EE丟問題過來你怎麼分析和開始動手解。前輩會判 02/18 21:36
→ TW0981081007: 斷你是否真的解決。程式品質如何。和 performance 02/18 21:36
→ TW0981081007: 等等 02/18 21:36
→ TW0981081007: 讀書心得鳥了。研讀的 Effective C++主持人本身功力 02/18 21:36
→ TW0981081007: 不夠,還不到第三十條就有人退出,也停止該讀書會。 02/18 21:36
→ andymai: common sense???空不空格的規矩誰說了算?莫名其妙... 02/18 22:15
→ andymai: 排版OK就行了~與其在空格上面做文章~倒不如花時間弄架構 02/18 22:16
→ andymai: 另外~我可沒說我自己空不空格~因為著重在這根本無聊... 02/18 22:17
→ littlethe: 樓上說中我的心聲XD 02/18 22:33
→ littlethe: TW,你的code review是大家一起看的嗎?還是一對一? 02/18 22:34
→ littlethe: 讀書會,這個爭議也挺大的,很多人不喜歡讀書會,會佔用到 02/18 22:35
→ littlethe: 自己的休息時間或是工作時間,我也是不喜歡有讀書會的 02/18 22:36
推 askacis: 排版這種東西交給軟體幫你搞定就可以 02/18 23:28
→ askacis: 只要上傳到server前做一次即可, 02/18 23:28
→ askacis: 寫code的時候還是依照個人習慣來寫才會有最大的產出,不 02/18 23:30
→ askacis: 然光在那個按空格就飽了 02/18 23:30
推 askacis: code review花時間在檢討排版上簡直是浪費生命,吃飽太 02/18 23:35
→ askacis: 閒 02/18 23:35
推 askacis: 況且連K&R style都不知道口氣還如此差,真是井底之蛙 02/18 23:40
→ iincho: 既然你都知道用程式搞定就好上server還被抓這個不是很矛盾 02/19 00:14
→ iincho: 你的東西要被merge進branch之前會被抓排版表示沒做處理啊 02/19 00:15
→ iincho: 這種被抓到還怪人家浪費你時間很怪吧? 本來就是錯的啊... 02/19 00:15
→ iincho: 我的經驗是,從小地方可以看出這個RD對code嚴謹不嚴謹 02/19 00:16
推 wuliou: 排版這種東西用IDE或是astyle去排就好了幹嘛用人力= = 02/19 00:16
→ iincho: 假設這種小地方都做不好, 通常其他部分也不會太強..... 02/19 00:16
→ littlethe: 我的文章有寫,我剛進公司,而且規定很富雜,一時沒有全背 02/19 00:37
→ littlethe: 起來,公司也沒有用IDE去自動排,我自己也review了3遍 02/19 00:38
→ iincho: 假設是規定我覺得就沒啥好商量, 被抓就摸摸鼻子改 02/19 00:39
→ iincho: 我被我帶的新人抓排版一樣重新搞一分再丟上去 02/19 00:39
→ iincho: 你最多是抱怨沒有IDE或是tool幫你做, 但是這是紀律問題 02/19 00:40
→ littlethe: 我是不認同抓小地方去辱罵別人這點,我也不認同從小地方 02/19 00:40
→ iincho: 被抓到就是錯, 沒有什麼好講的, 因為不是事後才告訴你 02/19 00:40
→ littlethe: 就可以看出一個人怎麼樣,要講小地方,每個人都有地方會 02/19 00:41
→ littlethe: 做錯,沒有人不會寫出BUG,還有,對方確實是事後才和我說 02/19 00:42
→ iincho: 我同意每個人不是每次都能做好, 但是被抓到就是要認.... 02/19 00:42
→ iincho: 你今天討論語氣不好這沒問題, 但是做不對的就是不對的 02/19 00:42
→ littlethe: 我有認,但我重點是對方辱罵這點,而且他自己也沒尊守 02/19 00:44
→ littlethe: 請把我文章看輕楚,要講小地方,你這小地方也沒看到 02/19 00:44
→ iincho: 我本來是在回askacis的東西, 不是在回你.... 02/19 00:46
→ iincho: 既然你要亂入, 那我還是講一下, 你同事很機車沒錯 02/19 00:46
→ iincho: 他要求的東西如果多於公司規定,那有討論的空間 02/19 00:47
→ iincho: 但是如果是在公司規定的coding style範圍就是該改 02/19 00:47
→ andymai: 如果空格這種東西是事前就有明定~那就只好遵守~可是如果 02/19 00:48
→ littlethe: 好吧,那當我沒說,看askacis怎麼回你囉.SORRY 02/19 00:48
→ andymai: 沒有~那還不無聊?少個空格就看不下去?甚至以這決定能力? 02/19 00:49
→ andymai: 只能說連架構上的事都討論不完了~有時間玩這個~太閒了吧 02/19 00:50
→ iincho: 你一個檔案前前後後有人用tab有人用空白的時候就知道了 02/19 00:51
→ littlethe: 他要求的部份有些規定裡沒有的,其實規定本身就有模糊的 02/19 00:51
→ iincho: 我這邊一堆人用vim又不肯自己調這些東西, 幫他們看code的 02/19 00:52
→ littlethe: 的地方,公司是用一堆code,就說這是coding standard 02/19 00:52
→ andymai: 然後呢?這樣就看不下去?那我和我同事同時在寫C++、C#、PH 02/19 00:53
→ iincho: 看到眼睛脫窗也不是很奇怪的事.... 02/19 00:53
→ andymai: P的 code 要怎麼辦?它們之間的差異比空格嚴重多了吧... 02/19 00:53
→ littlethe: 文字解釋的部份又不清楚 02/19 00:53
→ littlethe: 我是認為從大地方才看得出一個人真正的能力 02/19 00:55
→ littlethe: 比如說,決定用什麼技術,DB怎麼設計,流程是什麼... 02/19 00:57
→ littlethe: 能決定並實作出這些"大地方"的,遠比空格重要多 02/19 00:58
→ littlethe: 另外tab和space的問題,這個一進公司的時候,就可以幫新 02/19 01:00
→ littlethe: 人的IDE做設定,大家的IDE的tab定義一樣的話,不就解決了 02/19 01:00
推 askacis: 就說上server前用tool搞一次就好,不論括號或是空格從個 02/19 01:13
→ askacis: 人的習慣換成團隊的規定,跟寫code嚴謹一點關係都沒有 02/19 01:13
推 askacis: code review是要拿來看更重要的事 02/19 01:16
→ askacis: 這才是重點 02/19 01:17
推 flyingIdea: iincho是littlethe的前公司同事吧? 02/19 01:19
推 flyingIdea: 看完回文 我覺得iincho就是littlethe指的人XD 02/19 01:22
→ littlethe: 沒耶,真的不認識耶^^",很多事很多公司都會發生的 02/19 01:24
推 askacis: 我的team做code review是看那邊可能會memory leak,那邊可 02/19 01:26
→ askacis: 能會搞掛kernel或是控制硬體沒對到data sheet,或是每個人 02/19 01:26
→ askacis: 負責模組開放出的介面有沒有要修改的地方,而不是浪費大 02/19 01:26
→ askacis: 家的時間來檢查排版 02/19 01:26
推 askacis: 就算真的排版有問題也是事後請個別RD自己用 astyle跑一遍 02/19 01:29
→ askacis: 再上傳即可 02/19 01:29
推 askacis: 與其追究括號擺哪裡,空格少一個還不如追究架構正確與模 02/19 01:31
→ askacis: 組化,這才是所謂的嚴謹 02/19 01:31
→ littlethe: askacis大,感謝你分享,memory leak的確是很常發生的 02/19 01:47
推 askacis: 我的經驗是,有些人的能力只夠看空格或是括號,要他找出 02/19 01:47
→ askacis: 影響系統或是driver穩定的關鍵點簡直是強人所難,這樣的 02/19 01:47
→ askacis: 人我才不會把他擺在reviewer的位子上浪費大家的時間 02/19 01:47
→ littlethe: 問題,而且coding standard也難以規範到這一塊,真的需要 02/19 01:47
→ littlethe: code review時來看,我以前也出現過memory leak的囧事 02/19 01:48
推 askacis: 而有些人能力夠能服眾又熱心就會被我凹去幫忙review XD 02/19 01:49
推 askacis: 另外用 tool去搞定coding style的好處就是靈活與彈性,寫 02/19 02:20
→ askacis: linux的時候我們會遵循Linus本人訂的,寫MFC則是windows 02/19 02:20
→ askacis: 的那一套,RD不用硬背不同平台要怎麼寫,維持本來寫法讓t 02/19 02:20
→ askacis: ool來幫你搞定即可。 02/19 02:20
推 askacis: 有些人則是硬要搞自己team的 coding style,比如說寫linux 02/19 02:28
→ askacis: kernel時還是規定括號不能用K&R style,自以為遵循一套 02/19 02:28
→ askacis: 標準,但殊不知自己才是最不遵循的人,拜託,人家幾百萬 02/19 02:28
→ askacis: 行的code都這樣寫,只有你的不是,難道不會覺得突兀嗎? 02/19 02:28
推 yauhh: 沒錯,認同本篇文章。程度低的做 review ,效果會降級。 02/19 02:31
→ yauhh: 退化為對格式挑三撿四,但其實沒有幫助。 02/19 02:32
推 workworkwork: 我也推 CHECK格式只在檢查空格 那像白痴一樣 02/19 02:52
→ workworkwork: 格式應該給formatter而不是死記去浪費時間 02/19 02:54
→ yauhh: 看上面推文討論,覺得太有趣但是又太無聊了,程式格式是 02/19 03:00
→ yauhh: 一種需要動用到人情緒(發飆)的事情嗎? 02/19 03:01
→ littlethe: 唉,就是有人會在意這小事呀,不然我也不會來抱怨 02/19 03:13
→ littlethe: 也許我沒有遇過好的code reviewer吧,真希望以後能遇到 02/19 03:14
推 wasiseal: 好的 reviewer, 應該看到你格式不對就直接叫你弄好再來. 02/19 12:52
推 askacis: 那叫吃飽太閒沒事幹,要是我的team第一個抓來檢討 02/19 13:28
→ askacis: 格式不對上傳前可以人工或是script檢查,reviewer是來查 02/19 13:29
→ askacis: 不是鑽研在空格與括號上~ 02/19 13:31
推 wasiseal: 對啊, 所以就是弄好再來看。把自己的 code 弄到符合 02/19 16:09
→ wasiseal: 符合 coding convention, 再請 reviewer 看,應該是基本 02/19 16:10
→ wasiseal: 道義吧 02/19 16:10
→ workworkwork: 樓上 某些公司會不允許你用code formatter喔 02/19 16:42
→ workworkwork: 我之前在台中待過一間就不允許人用 每次寫完CODE 02/19 16:43
→ workworkwork: 都要花2~3倍的時間在檢察空格..... 02/19 16:44
推 wasiseal: 但大家都規定好的東西,遵守應該是正常的吧。如果真的 02/19 16:49
→ wasiseal: 規定太爛的,應該大家要在討論一個新的規定。 02/19 16:50
推 askacis: 不能用tool的這種公司還是趕快逃吧~ 02/19 17:07
推 workworkwork: 問題是也要他們想要改規定 有些人不會承認自己錯 02/19 18:06
→ iincho: 這跟用tool無關,實際上就是你丟給reviewer的東西格式不對 02/19 20:19
→ iincho: 假設coding style是規定好的,先弄好在請人看應該是基本吧 02/19 20:20
→ iincho: 或者你就講好大家都不要管這段,我每天跑formatter就沒差 02/19 20:21
→ iincho: 樓主對對方的批評是他的技術不好語氣又差,這點我不予置評 02/19 20:26
→ iincho: 問題是他挑你這件事如果公司有規定本質上來看是對的 02/19 20:27
→ iincho: 假設覺得他不是每次都照規定寫, 那應該review的時候反應 02/19 20:28
→ iincho: 而不是種你闖紅燈所以你沒有立場抓我闖紅燈這樣.... 02/19 20:28
→ iincho: 我有一次被我帶的新人抓空白排版,改完我還寫信跟他道謝 02/19 20:33
→ iincho: 因為這就是工作品質沒做好,這方面我覺得沒啥好討論的 02/19 20:34
→ iincho: 因為這些都是之前講好的東西,被抓到就是要認.... 02/19 20:35
推 askacis: 所以啊,抓空白工程師就是這樣培養出來的,明明tool or s 02/19 20:56
→ askacis: cript就能處理的事,讓兩個工程師花時間在搞這些~~ 02/19 20:56
推 askacis: 基本上就是搞個多如牛毛到最後大家都沒辦法遵守的coding 02/19 21:03
→ askacis: style擾民在先,不思進取改善review流程,浪費大家時間 02/19 21:03
→ askacis: 在後,這樣的code review一點意義都沒有 02/19 21:03
推 askacis: 我也情願聽底下工程師坐在一起討論code flow與 case stud 02/19 21:07
→ askacis: y而非研究空白多了一個會對程式造成什麼毀滅性的影響 02/19 21:07
推 askacis: 回到闖紅燈的例子,對我來說,闖紅燈是錯,但是繳交罰單( 02/19 21:13
→ askacis: tool or script)就可以解決,而非為了闖紅燈一路打官司到 02/19 21:13
→ askacis: 最高法院(code review) 02/19 21:13
推 askacis: 曠日費時且沒有效率~另外就是tool很和善可人,總是默默 02/19 21:16
→ askacis: 幫你修完格式而且不帶任何負面情緒,請多利用之~ 02/19 21:16
推 wasiseal: 不太懂為什麼看排版跟討論什麼 code flow 是互斥的... 02/20 00:36
→ KeySabre: 1.導入tool 2.上code前檢查 沒互斥的 02/20 03:04
→ Obama19: 沒人說抓空格就不看架構 你第一關都fail了 剩下的有意義? 02/20 03:35
→ Obama19: 空格不過就是第一關 code格式亂七八糟 我連看都不想看 02/20 03:36
→ Obama19: 一些人的邏輯有問題嗎? 看空格 == 不看架構? 02/20 03:38
推 xvid: 老實說沒做code formatter 第一眼看到會很倒胃 02/20 04:35
推 xvid: @workworkwork 我猜那是公司怕你用了不同格式把整篇code都改 02/20 05:02
→ xvid: 結果讓diff code tool上看到眼花 其實這種問題像 02/20 05:04
→ xvid: Artistic Style都能設定到很詳細 Beyond comparer也可配合 02/20 05:04
→ xvid: 一個快速鍵不到一秒能解決的事情 沒必要去費時傷神... 02/20 05:07
→ xvid: Artistic Style是自由軟體 很多自由軟體的IDE或編輯器都能找 02/20 05:09
→ xvid: 內建或addon 連visual studio上也有人作addon 試試看吧 02/20 05:11
推 askacis: 有些人可能要看眼科,本意是 code review不該浪費時間在 02/20 06:54
→ askacis: 排版空格上 02/20 06:54
推 askacis: 抓完空格排版就飽了,再來看架構請問你一天是有多少時間 02/20 06:56
→ askacis: ? 02/20 06:56
推 askacis: 本來tool or script就能檢查處理的東西,要花RD的時間來 02/20 06:58
→ askacis: 看,可能大家時間真的很多吧 02/20 06:58
推 askacis: 上傳前自動hook script檢查或是排版是很難膩? 02/20 07:02
→ askacis: 只能說有些人思維要改,人家都上太空你還在殺豬公~ 02/20 07:02
推 askacis: 排版空格這些找剛畢業的初心者review我都嫌浪費與糟蹋人 02/20 07:16
→ askacis: 家寶貴的黃金成長期,更何況是讓戰力高資深RD來做簡直匪 02/20 07:16
→ askacis: 夷所思 02/20 07:16
→ Obama19: 這厲害了 空格這種東西一眼掃過去知道了 是要看多久? 02/20 10:39
→ Obama19: 明顯今天原po公司沒用工具排版 那自己又不檢查 卻又怪團 02/20 10:40
→ Obama19: 隊規定麻煩 請問這是誰的問題? 02/20 10:41
→ KeySabre: 都有問題 02/20 12:40
→ KeySabre: 也許看空格不花時間?但一來一回打斷工作節奏,成本其 02/20 12:42
→ KeySabre: 實不小 02/20 12:42
→ KeySabre: 最好是導入工具 並且確實執行 兩者兼顧 讓工程師回歸解 02/20 12:45
→ KeySabre: 題邏輯 02/20 12:45
推 andymai: 沒說看空格等於看架構啊 只是當你連規劃架構、調效能、 02/20 16:55
→ andymai: 實做功能的時間都沒有了 你還會執著在空多大格?都用工 02/20 16:55
→ andymai: 具排好、設定好不就好了? 02/20 16:55
推 flyingIdea: @xvid 那間公司不讓我導入tool 堅持用人工檢察空格 02/21 03:30
→ flyingIdea: 看空格花不花時間? 你如果一個file只改一行 卻要去 02/21 03:31
推 flyingIdea: 突然發現我用到別人帳號回文~Orz 02/21 03:53
推 workworkwork: 換回我自己的帳號重回一次XD 02/21 11:35
→ workworkwork: 我之前待過的公司 你一個file只改一行 卻要去看 02/21 11:36
→ workworkwork: 全部FILE的空格有沒有空錯~有時要修個小BUG要去看 02/21 11:36
→ workworkwork: 2~300行UP的空格.... 明明導入tool就搞定的事 02/21 11:37
→ workworkwork: 卻要弄的讓辨公室裡的人互相罵來罵去 02/21 11:38
推 alan3100: 這也沒啥好吵的..比對軟體或version control有內建viwer 02/21 12:12
→ alan3100: "真的"只改一行 viewer一開人工一看就知道了 02/21 12:13
推 workworkwork: 不 他們要求的是 你改了一行 要去check那個檔案的 02/21 12:14
→ workworkwork: 全部coding style有沒有附合規格 02/21 12:15
→ alan3100: 如果硬凹要說veiwer是不導入tool的一種 難不成公司都用 02/21 12:15
→ alan3100: 改一行就全部重做? 反正公司錢多,腦袋不換就等被淘汰 02/21 12:17
推 workworkwork: 我也不知是不是其他人都一樣 至少我沒改會被帶我 02/21 12:37
→ workworkwork: 的人飆XD~導致後來我都只想改同一個檔案裡的內容XD 02/21 12:38
→ workworkwork: 除了被飆很不爽 但想想公司每個月花錢請我去改空格 02/21 12:40
→ workworkwork: 有一種很KUSO的感覺XD 02/21 12:40
推 jinmin88: codereview最重要的不就是看你寫的演算法有沒有效率.. 02/21 15:43
→ jinmin88: 很多人都本末倒置了 在ㄧ些無關緊要的細節挑毛病 02/21 15:44
推 askacis: 空格工程師表示:我會抓空格我最強~ 02/21 18:53
推 rupcj8: XDDDD某空格魔人太好笑了 一堆更重要的要看在那邊挑空格 02/21 20:23
推 prpure: 請問有人遇過規定要空3格的嗎? 而不是TAB的空四格 02/23 01:21
→ prpure: 有點受不了這規定... 02/23 01:21
→ xvid: tab space還有6和8的 如果是插入tab倒還好 space就只能習慣 02/23 04:53
→ fgh81113: @prpure 可用工具將tab改為3格你會好受點 02/23 11:20
推 askacis: 寫完再用tool一次改,astyle可以設 02/23 21:51
→ askacis: tab等於幾個空白或是真的就是tab 02/23 21:51
→ askacis: 我寫的時候都只按tab再靠astyle幫忙format 02/23 21:52
→ askacis: 寫linux kernel就是8個,寫自己的程式就是4個,很方便 02/23 21:54
→ askacis: 也不用背,規則寫好一次轉完 02/23 21:55
→ askacis: 只是怕大家都用tool,某些空格工程師可能會失業~ 02/23 21:56
→ ChoDino: ctrl+alt+f 結束 02/25 01:04