[閒聊] Linus Torvalds對於註解的看法

看板C_and_CPP作者 (沒有存在感的人)時間7年前 (2016/07/12 17:30), 7年前編輯推噓15(15034)
留言49則, 21人參與, 最新討論串1/1
內容來自: http://lkml.iu.edu/hypermail/linux/kernel/1607.1/00627.html Linux的老爸Linus日前發信希望kernel開發者能避免 "殘害腦細胞的愚蠢註解格式" (brain-damaged stupid networking comment syntax style) 他只喜歡這三種: (a) /* This is a comment *./ (b) /* * This is also a comment, but it can now be cleanly * split over multiple lines */ (c) // This can be a single line. Or many. Your choice. 以下是他不喜歡or痛恨的: (d) /* This is an alternate multi-line format that isn't horrible, but not kernel style */ no: /* This is disgusting drug-induced * crap, and should die */ no-no-no: /* This is also very nasty * and visually unbalanced */ Linus本人有自己的一套程式美學阿.... (當然,如果每天要看幾萬行code,那當然是希望奇怪的格式愈少愈好....) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 90.41.173.105 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1468315831.A.A69.html ※ 編輯: wtchen (90.41.173.105), 07/12/2016 17:37:12

07/12 17:48, , 1F
Linus 招牌:我不喜歡的都是廢物, 沒有理由, 不爽不要用
07/12 17:48, 1F

07/12 17:49, , 2F
這種沒理由的「準則」其實和個人板廢文等級差不多
07/12 17:49, 2F

07/12 17:54, , 3F
之前他對於GNU的coding style也是很不滿XD
07/12 17:54, 3F

07/12 17:57, , 4F
這些例子都是開頭沒對齊的,在 code 裡理由很充分了吧
07/12 17:57, 4F

07/12 18:08, , 5F
我覺得很多coding高手寫code寫久了都會發展出強迫症...
07/12 18:08, 5F

07/12 18:09, , 6F
話說回來,如果是一群人一起寫code,那有些coding style
07/12 18:09, 6F

07/12 18:09, , 7F
的規範其實是有必要的....
07/12 18:09, 7F

07/12 18:20, , 8F
同意uranusjr
07/12 18:20, 8F
※ 編輯: wtchen (90.41.173.105), 07/12/2016 20:11:16

07/12 23:01, , 9F
推高手會發展出強迫症XDD 跟他們一起工作有點煩XDDD
07/12 23:01, 9F

07/12 23:02, , 10F
但可以學到很多東西 還是蠻值得的
07/12 23:02, 10F

07/13 00:15, , 11F
註解的style還是很重要的,各式各樣的格式看的真的很痛苦
07/13 00:15, 11F

07/13 00:16, , 12F
既然linux是他生的,那寫linux kernel也就只能照著作,至
07/13 00:16, 12F

07/13 00:16, , 13F
少讓格式一致
07/13 00:16, 13F

07/13 00:30, , 14F
linus會放炮可是都是言之有物的吧...雖然都是罵廢物沒錯
07/13 00:30, 14F

07/13 00:38, , 15F
有點好奇C++這麼多年的改變很大,Linus還是一樣討厭嗎XD
07/13 00:38, 15F

07/13 01:24, , 16F
(d) 他勉強可以接受吧, 只是不要用在 kernel
07/13 01:24, 16F

07/13 02:13, , 17F
(d)算是不喜歡但可以接受
07/13 02:13, 17F

07/13 05:04, , 18F
看code到一半突然出現奇怪格式容易讓腦袋打結ˊ_>ˋ
07/13 05:04, 18F

07/13 16:27, , 19F
然而他都有給理由阿,Linus只是用詞激烈了點讓很多人不順
07/13 16:27, 19F

07/13 16:28, , 20F
眼,但是他罵人的時候要不是那篇有理由不然就是那串郵件有
07/13 16:28, 20F

07/13 16:30, , 21F
以這篇為例,原文第二段第一行就是理由了還有人覺得是廢文
07/13 16:30, 21F

07/13 18:01, , 22F
覺得他廢文就是說 那是他的看法 我不買他帳
07/13 18:01, 22F

07/13 18:02, , 23F
不是「有理由」別人就一定要同意 就算他誰也是一樣
07/13 18:02, 23F

07/13 18:05, , 24F
不同意他的理由是一回事,說他沒理由又是另外一回事了
07/13 18:05, 24F

07/13 19:17, , 25F
他除了最後那個有說 visually unbalanced 哪個有理由?
07/13 19:17, 25F

07/13 19:18, , 26F
喔還有一個說 not kernel style 啦, 這個我接受
07/13 19:18, 26F

07/13 19:18, , 27F
然後 visually unbalanced 也沒說怎樣 unbalanced 啊
07/13 19:18, 27F

07/13 19:19, , 28F
我就是在說他沒理由, Linus Torvalds 就是喜歡沒理由到
07/13 19:19, 28F

07/13 19:19, , 29F
處瘋狗亂吠, 這是事實啊, 和他是高手完全不衝突
07/13 19:19, 29F

07/13 21:10, , 30F
樓上 就像女生喜不喜歡你一樣啊 她沒辦法告訴你她不喜歡
07/13 21:10, 30F

07/13 21:10, , 31F
你哪一點
07/13 21:10, 31F

07/13 21:10, , 32F
反正就是不喜歡 難道你也要說她瘋狗亂吠?
07/13 21:10, 32F

07/13 21:10, , 33F
以經驗得知這樣的寫法就是不好 你要人家給你什麼理由?
07/13 21:10, 33F

07/13 21:10, , 34F
不是沒理由,而是那是強迫症的症狀
07/13 21:10, 34F

07/13 21:11, , 35F
強迫症患者對於visually unbalanced真的很敏感 XD
07/13 21:11, 35F

07/13 22:08, , 36F
統一格式真的可以少點心力
07/13 22:08, 36F

07/14 00:22, , 37F
我是覺得如果你不是寫linux kernel那要什麼style都可以,
07/14 00:22, 37F

07/14 00:23, , 38F
但如果寫linux kernel就乖乖遵守吧,人家是老爸,為了一致
07/14 00:23, 38F

07/14 00:23, , 39F
就只能照著做了阿
07/14 00:23, 39F

07/14 21:41, , 40F
我的習慣跟他一樣,他們的註解是英文,會更注重這些
07/14 21:41, 40F
※ 編輯: wtchen (90.41.173.105), 07/14/2016 22:33:24

07/14 22:34, , 41F
我自己的喜歡程度a=c>d,其他不用
07/14 22:34, 41F

07/15 13:27, , 42F
我倒是贊成有格式,有時候統一格式時,要做很多事(搜尋,
07/15 13:27, 42F

07/15 13:27, , 43F
修正) 都很容易
07/15 13:27, 43F

07/15 17:34, , 44F
怎麼自動用出(b)的commnet啊@@ 我常弄出後面的那些
07/15 17:34, 44F

07/15 17:34, , 45F
但只是不知怎自動格式只好自己按空白就變那樣
07/15 17:34, 45F

07/15 23:23, , 46F
Eclipse跟Geany有支援(b)的格式,打/*然後Enter就是了
07/15 23:23, 46F

07/16 13:55, , 47F
如果用#, #後面也要空一格嗎?
07/16 13:55, 47F

07/16 16:54, , 48F
Python PEP8 #後面會空一格
07/16 16:54, 48F

07/18 18:01, , 49F
看習慣 linux kernel 看其他的 coding style 真的很痛苦
07/18 18:01, 49F
文章代碼(AID): #1NXBYtff (C_and_CPP)