身為一個傻蛋工程師
coding style就是要簡單易懂
畢竟code是要交接的
當無法確定誰會最為後來者
所以我的coding style只有以下幾條
1.
常數全大寫,只用#define定義
不是常數的就全部小寫
2.
全域定義的
指標前面帶p_
列舉前面帶e_
結構前面帶s_
陣列前面帶a_
不是的就用v_
這只是方便讓我用intelligent code completion
3.
區域定義的
只會有v_開頭的那種
4.
永遠不用const宣告
5.
只用while跑迴圈
要中斷就自己用寫判斷式讓它break跳掉
6.
只用if-else
別用其它任何的條件判斷
7.
字串一律用array處理
其它格式的通通先轉成array就對了
這樣就不會有不熟悉操作方法的人來問
8.
自訂的函數內
禁止超過100行
禁止超過五個參數
禁止呼叫超過10個函數
慢一點無所謂,拆分比較重要
code愈簡單愈好
交接我code的人沒有看不懂語法的
看不懂演算法跟結構設定的倒是一堆
然後大家就會說這個code寫的基礎架構很好
淺顯易懂、深入淺出
(其實是看起來簡單,不會不知道怎麼改動)
交接的人也能順利接下去
重點是,跟著這個rule走
"傻子也能發揮生產力"
作者:
dsin (dior)
2023-05-11 14:57:00萬一呼叫30個函數要怎麼拆fun1 fun2 fun3每個塞10函數這樣?
const 是用在函數唯讀參數的吧,為何從來不用呢?@dsin 是要把功能或工作事項拆分,不是數到第幾行硬切我自己也有一個函數儘量不超過 150 行的習慣但連續的 if-else-if-else 和超長 switch-case 可以例外
作者:
firejox (Tangent)
2023-05-11 19:13:00常數用 enum
作者:
Lipraxde (Lipraxde)
2023-05-11 20:49:008 也太嚴@@,我反而是拆分的函數盡量不超過三層,看有些 dispatch 過的進一層去 reuse,又一層 dispatch 很頭痛
作者:
NDark (溺於黑暗)
2023-05-12 20:51:00作者:
Lipraxde (Lipraxde)
2023-05-13 08:37:003v1L...看著看著覺得這樣的 coding style 好熟悉...平常都被殘害著QQ
作者:
jitaomef (agilebean)
2023-05-13 11:06:00反串+1
作者:
ck574b027 (荒圍!定厝!賊!妹!)
2023-05-13 12:34:00違和感測試,就算1沒反應2也該響了
作者:
chuegou (chuegou)
2023-05-13 22:03:00反串乙
傻蛋生產力就這麼來的,尤其當你的主管也是傻蛋的時候不要跟獎金分紅過不去,講不贏傻蛋,就只好加入他們XD
作者:
HMKRL (HMKRL)
2023-05-16 13:26:00有什麼不寫const的理由嗎 可讀性好不少欸
作者:
F04E (Fujitsu)
2023-05-16 14:53:00永遠不用const宣告... constexpr表示: 情何以堪
作者:
cylee (Artisan)
2023-05-17 10:36:00可能他都在寫 C 現在的 IDE 這麼進步,其實不用 prefix
作者:
rnoro (隼)
2023-05-21 07:38:00這是在搞笑吧。。。不用const???
作者:
wulouise (在線上!=在電腦前)
2023-05-28 19:58:00constexpr就不用const
作者: jheli (我是企鵝) 2023-06-03 17:42:00
用const可以提高code的安全性,可讀性也沒比較差啊
作者: cseslowpoke (呆呆獸) 2023-06-07 20:52:00
用 const 還會讓編譯器比較好做優化,為什麼不 const
作者:
ck574b027 (荒圍!定厝!賊!妹!)
2023-06-08 19:13:00就跟你說反串要註明了 每一條都有問題也會有人誤會好嗎
作者:
F04E (Fujitsu)
2023-06-24 08:46:00...
作者: alex780312 (Alex) 2023-11-06 10:46:00
用個 sonarqube 不好嗎