[閒聊] undefined behavior

看板Soft_Job作者 (批踢踢世界)時間10年前 (2015/04/22 02:14), 編輯推噓7(7022)
留言29則, 14人參與, 最新討論串1/1
這次我被派到全球萬人以上公司的分公司幫忙寫報表程式。 該公司對於開發該報表程式僅採取兩種模式,稱之m1和m2。 於昨日資深前輩所寫的程式被我發現, 她所寫的undefined behavior語法出現在一隻數千至萬行的程式之中。 會發現的原因是m1下該語言在runtime time的該行沒有任何反應繼續執行, 但在m2就會hang住無限期。而我在本機開發使用m2開發所以發現了。 而該程式在Production的版本是使用m1,所以這個問題(bug?)一直沒被發現。 前輩跑來我的位置argue這不是bug,我無所謂,反正總是個危險的寫法。 而修正方法僅加上一行if敘述即可避免,這點兩人皆有共識。 我問她要不要改,她避重就輕m1就沒問題啊,每天都在印報表有問題早就被罵翻了。 又加了幾句,你才寫程式幾年,要多寫幾年程式等倚老賣老的說詞。 無論我怎麼已是非題問是否修正,就是不正面回應。 然後我無賴發信:我發現這個問題,但因為前輩的說法,所以此地方不進行修正。 因為我目前正在開發這隻程式,所以就lock該程式,防止前輩後續偷加if判斷。 我主張程式語言版本是會改版更新的,即使我是個小外包, 程式語言更新後可能我就不在這邊了,誰也不能保證改版或更新後 undefined behavior的寫法仍然可以通過m1, 但是能用一個if就能使程式更robust,為何不做,而且目前也正值開發啊。 修正與否其實只是一個回答,這不是寫程式比較多年, undefined behavior寫法就可以不出錯的好嗎?根本是要擲爻的吧。 而我第一次起了邪惡"我就不改,到時候改版或更新就乎伊死"的念頭。 有點不負責任,但我可是有事先提醒,反正又不一定會有事, 只是Production出事,一印報表幾十萬到百萬份的,損失多少我不知道。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.164.164 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1429640040.A.1D7.html

04/22 02:17, , 1F
補充,以Java語言來說會炸NullPointerException。
04/22 02:17, 1F

04/22 02:17, , 2F
但該m1模式卻能無視,超猛的。
04/22 02:17, 2F

04/22 02:18, , 3F
而這個報表語言沒有設計定義exception,一定要寫對。
04/22 02:18, 3F

04/22 09:03, , 4F
我以前也會直接講,現在都會跟同事你程式寫得很棒,不過
04/22 09:03, 4F

04/22 09:03, , 5F
不改出包不算你的吧
04/22 09:03, 5F

04/22 09:04, , 6F
在某一個地方感覺加上了xxx好像更好之類的,通常就會接
04/22 09:04, 6F

04/22 09:04, , 7F
受....
04/22 09:04, 7F

04/22 09:07, , 8F
就...讓它發生呀 發生後再來解決 你已經仁至義盡了
04/22 09:07, 8F

04/22 09:08, , 9F
這種面子問題說不定可以做球給前輩改…
04/22 09:08, 9F

04/22 09:35, , 10F
不改沒問題,但lock起來不讓別人改就...
04/22 09:35, 10F

04/22 09:38, , 11F
就算要留證據,都有版本控制能lock了,讓log說話不好嗎?
04/22 09:38, 11F

04/22 11:17, , 12F
你的作為怎麼好像跟你之前的講法有點出入(歪頭
04/22 11:17, 12F

04/22 11:42, , 13F
感覺你只是想爭一口氣...
04/22 11:42, 13F

04/22 11:53, , 14F
感覺你永遠只是想爭一口氣...
04/22 11:53, 14F

04/22 12:42, , 15F
這是我第一次想邪惡的爭一口氣。
04/22 12:42, 15F

04/22 12:44, , 16F
不過往往最後我都會心軟。
04/22 12:44, 16F

04/22 12:45, , 17F
前輩是女性。
04/22 12:45, 17F

04/22 13:55, , 18F
不覺得花功夫在這地方是損人不利己嗎
04/22 13:55, 18F

04/22 15:55, , 19F
感覺跟餐廳,因為客人機車,就在他的食物裡偷加料,
04/22 15:55, 19F

04/22 15:56, , 20F
有些相似,畢竟,不做處理跟帶著惡意的處理方式。
04/22 15:56, 20F

04/22 15:56, , 21F
後者「違反職業道德」的感覺強烈的多。
04/22 15:56, 21F

04/22 17:03, , 22F
所以我承認邪惡囉!
04/22 17:03, 22F

04/22 20:05, , 23F
分享一篇文章給您參考~~ Soft_Job #1LAhn67j
04/22 20:05, 23F

04/22 20:07, , 24F
「為小事不平即造反或佔得便宜不給對方台階下之輩,其
04/22 20:07, 24F

04/22 20:07, , 25F
發展總是有限。不求息事寧人,但至少毋須將業拚盡,
04/22 20:07, 25F

04/22 20:07, , 26F
和氣生財一向為傳統美德,得饒人處且饒人。」
04/22 20:07, 26F

04/22 20:24, , 27F
你背的好熟,我以為被噓爆沒人理
04/22 20:24, 27F

04/22 21:13, , 28F
什麼language?
04/22 21:13, 28F

04/22 22:31, , 29F
推具體討論文~
04/22 22:31, 29F
文章代碼(AID): #1LDfDe7N (Soft_Job)