Soft_Job 板


LINE

大家好 小弟剛出社會 在純軟這個行業大約半年 最近code base在做IT的時候打出一個bug 老鳥們沒空所以派我這隻菜鳥去修 當我打開專案開始從模組方向找線索時 老鳥甲路過 看了一眼說 你這樣debug效率有點慢 直接看submit紀錄找戰犯比較快 我試了一下 果然滿快就找到問題點了 根據老鳥甲所說 大概7-80%的bug都可以這樣抓 這裡想詢問各位大大 這種除錯習慣是不是對新手熟悉軟體架構不利 畢竟第一時間都在抓戰犯 而不是去了解目前軟體架構遇到的問題 ---- Sent from BePTT on my OnePlus GM1910 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.247.128.240 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1640604195.A.BC2.html
1F:→ ssccg: 熟悉架構是一回事,除錯是一回事,沒有一定要同一個手段吧 12/27 19:33
2F:→ ssccg: 記錄不拿來抓錯,記身體健康的? 12/27 19:34
3F:→ bill0205: 這是兩回事 埋了log但是不熟架構你還是不知道為何出現b 12/27 19:38
4F:→ bill0205: ug 但更多的是再熟架構都可能出現奇葩的bug 就是需要lo 12/27 19:38
5F:→ bill0205: g去幫忙debug 12/27 19:38
6F:推 alan23273850: 是 submit 記錄還是 commit 記錄呢? 12/27 19:55
7F:→ cytus74: submit紀錄 看code diff抓bug 12/27 19:56
8F:推 s06i06: 我猜貴司沒在code review 12/27 20:01
9F:→ nh60211as: 沒在管控程式碼commit的這樣確實比較快 12/27 20:30
10F:推 Onnnnnnnnnnn: 這叫夾版本啦 通常就是週五上code 趕下班 賭一波 12/27 20:30
11F:→ Onnnnnnnnnnn: 不驗就直接上啊哈哈哈 12/27 20:30
12F:→ Onnnnnnnnnnn: 敝司MTK 抓戰犯也這樣搞啊 12/27 20:30
13F:推 samioplg: 我以為debug靠log 12/27 20:56
14F:推 alihue: 急的話當然從 commit log 與 bug 執行路徑下手 12/27 21:03
15F:→ alihue: 要熟悉架構通常開發做吧 除非 bug 不急 12/27 21:04
16F:推 yamakazi: 如果是IT就能抓到的話,有沒有考慮CICD的時候把IT也做了 12/27 22:15
17F:→ yamakazi: ,這樣bug commit進去馬上就能抓到 12/27 22:15
18F:→ yamakazi: 我都這樣找root cause。還有的時候會上issue tracker看 12/27 22:17
19F:→ yamakazi: 看別組有沒有解過類似問題,有的話直接拿來抄,一小時就 12/27 22:17
20F:→ yamakazi: 搞定,然後其餘五天都在打混(? 12/27 22:17
21F:→ yamakazi: debug mode能用就用,比你單看code更快熟悉架構。 12/27 22:19
22F:→ charliejack: 我有時候會用Binary search耶 有時候懶得看Code 12/27 22:22
23F:→ charliejack: 尤其專案真的太大 但能看Code當然會看 12/27 22:22
24F:→ charliejack: 照理來說 每次的Commit 應該是小區域小區域 12/27 22:22
25F:推 yamakazi: 要熟悉軟體架構的話,可以順便幫忙把class diagram, seq 12/27 22:23
26F:→ yamakazi: uence diagram畫一畫分享到組內wiki,我會很感謝您 12/27 22:23
27F:推 yamakazi: 夾版本可以用git bisect 12/27 22:30
28F:推 alan23273850: 我也用過 binary search 大法... 12/27 22:33
29F:→ taikobo: 看到 submit 紀錄還以為是什麼 form...結果是 commit 12/27 22:38
30F:→ superpandal: 那只是因為他架構比你熟很多才會這樣 而且通常有抓戰 12/27 22:51
31F:→ superpandal: 犯習慣的公司程式碼幾乎都是屎山 你改他也改 不就看 12/27 22:53
32F:→ superpandal: 誰哪天被坑到... 12/27 22:54
33F:→ superpandal: 職場一些小手法很容易看清楚 不過就算老鳥錯他還是活 12/27 22:56
34F:→ superpandal: 的很滋潤 然後拿crud boy的錢要幫忙處理大事情 做的 12/27 22:57
35F:→ superpandal: 好也沒獎勵... 12/27 22:57
36F:→ peter98: 我也想了一下submit是甚麼 原來只的是交code... 12/27 23:08
37F:→ viper9709: 推樓樓上 12/27 23:22
38F:推 kurtsgm: git叫做commit 但有些version control叫做submit啦.... 12/27 23:49
39F:→ kurtsgm: 不用挑語病 原po也不見得講錯 12/27 23:49
40F:→ kurtsgm: 前公司用perforce印象中就是submit 12/27 23:50
41F:推 bill0205: ..原來是commit喔...還以為是form submit 12/28 00:11
42F:→ vi000246: 很少這樣查bug 除非是毫無頭緒的 才會看是不是最近改的 12/28 00:33
43F:→ vi000246: 通常都是從各種log查吧 12/28 00:33
44F:推 Gaogaigar: https://leetcode.com/problems/first-bad-version 12/28 01:06
45F:→ Gaogaigar: /description/ 12/28 01:06
46F:推 JasonChou007: 另外提供一個想法,有時候程式較大,主程式跳至子 12/28 01:38
47F:→ JasonChou007: 函數,子函數再跳至孫函數,來來去去的,有可能會 12/28 01:38
48F:→ JasonChou007: 在某一個函數裡面不小心計算錯誤,而造成執行次數 12/28 01:38
49F:→ JasonChou007: 出錯。這種情況可在子函數跟孫函數裡面,各加一個 12/28 01:38
50F:→ JasonChou007: 執行次數計數器,跑完一遍後可以直接查看計數器的 12/28 01:38
51F:→ JasonChou007: 值,就能知道子函數、孫函數各執行了幾次 12/28 01:38
52F:→ acgotaku: 其實commit 加上票號版本,看功能就能快速對應哪一版bug 12/28 01:57
53F:→ acgotaku: 搭配changelog管理生成工具 12/28 01:58
54F:→ acgotaku: 還在對commit, 只能說版控做得還不夠好 12/28 01:58
55F:噓 darkMood: 老鳥很清楚,bug都是同事生產的,公司一堆廢物啊 12/28 02:28
56F:→ ericthree: 不然你debug要花多少時間 12/28 08:44
57F:推 hidog: 了解架構 <= 這個要看你急不急 12/28 09:00
58F:→ hidog: 都火燒屁股了還在了解架構,會被釘得滿頭包 12/28 09:01
59F:→ hidog: 眼前的火滅了有空在自己去研究架構 12/28 09:01
60F:→ superpandal: 哪有時間可以給你搞好commit... 一個人又不是另一個 12/28 09:14
61F:→ superpandal: 人肚子裡的蛔蟲... 簡單化才是正確的 簡單並不意味著 12/28 09:15
62F:→ superpandal: 無法實現複雜功能 12/28 09:16
63F:→ superpandal: 通常老鳥當時是bug開始的一員 不管有沒有機會管事 最 12/28 09:18
64F:推 Lhmstu: 熟架構跟debug本身就不衝突 12/28 09:19
65F:→ superpandal: 後有機會了也是不可能改變了 後面的人會很痛苦 12/28 09:19
66F:→ superpandal: 要解決的好要了解架構 沒時間當然只能端出一個十分馬 12/28 09:20
67F:→ superpandal: 乎的成果 出張嘴檢討是很簡單的 12/28 09:21
68F:→ superpandal: 最後就是繼續堆屎山 反正被檢討的是別人 每個人都想 12/28 09:24
69F:→ superpandal: 過的好 12/28 09:24
70F:推 Csir: 原來大家都用二元搜尋夾版本 12/28 09:26
71F:推 dave123: 用commit抓bug跟理解架構不衝突。說先用commit點除錯的無 12/28 09:59
72F:→ dave123: 法理解架構,應該是個人就不想去理解。你發現commit的cha 12/28 09:59
73F:→ dave123: nge造成錯誤,仍然會去了解他上下幾層的關係以及邏輯。這 12/28 09:59
74F:→ dave123: 兩個方式是相輔相成。 12/28 09:59
75F:推 abc0922001: form submit +1 12/28 10:10
76F:→ ScottOAO: git bisect 12/28 10:20
77F:推 CRPKT: 一個 commit 引發 bug 不代表錯的是那支 commit 呀 XD 12/28 10:29
78F:推 bnd0327: https://git-scm.com/docs/git-bisect 了解一下 12/28 12:06
79F:→ eva19452002: 我以為debug都是用step in step out 12/28 12:58
80F:噓 SouthRa: 可以光靠看diff而不用熟悉架構就能抓出來的bug不就低能錯 12/28 13:45
81F:→ SouthRa: 誤嗎,review時就該看出來的那種 12/28 13:45
82F:→ SouthRa: 但就算是不低能的bug,熟悉系統架構的情況下還是配diff一 12/28 13:48
83F:→ SouthRa: 起看最有效率 12/28 13:48
84F:推 bnd0327: 樓上一個鬼轉耶,那幹嘛要噓人 12/28 13:59
85F:→ knives: 這老鳥甲沒救了 12/28 14:14
86F:→ knives: 原來不是 form submit,推回來 12/28 14:16
87F:推 andy831020: 你講的兩個domain不同吧 debug跟架構瞭解是兩回事 12/28 15:54
88F:推 SouthRa: 就純噓低能錯誤,推回來 12/28 17:18
89F:→ lazarus1121: db撈出來才造成錯誤的這種方法就沒效了 12/28 23:16
90F:推 open2014: 用二元搜尋夾版本是什麼意思? 12/29 00:58
91F:推 s06yji3: 看哪個版本是第一個有bug,看改了什麼鬼 12/29 01:02
92F:→ kattte: 長知識 12/29 14:13
93F:推 kewang: 改了一點點東西記得commit 然後用git bisect找問題就很快 12/29 18:55
94F:→ luluking: 看是哪種bug啊,新改出來的這樣找比較有效率 12/29 21:04
95F:→ crazylunar: debug用log找吧,找到問題再git history 抓戰犯不是 12/30 02:48
96F:→ crazylunar: 嗎…commit message 能找bug 第一次聽到… 12/30 02:48
97F:→ crazylunar: 更正,是git blame 12/30 03:19
98F:推 physicsdk: 工作要的是效率,事情丟給你要在時間內有結果,解掉是 01/01 00:58
99F:→ physicsdk: 結果,抓到戰犯也是,後者簡單啊,不難理解 01/01 00:58
100F:推 zased: 這有什麼好吵 兩項技能都點滿就好了啊 說實在不要去糾結 01/01 04:13
101F:→ zased: 這些 趕快變強比較實在 01/01 04:13
102F:推 mithuang: 沒版控就算了,有版控可找BUG了,誰還在管你習慣好不好咧~ 01/02 08:44
103F:→ mithuang: 能找到問題就是好方法啦,不然寫git bisect功能的人不就 01/02 08:44
104F:→ mithuang: 是軟體界的敗類,教壞大家依賴版控了? 01/02 08:44







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP