作者bb0x0 (bb0x0)
看板Soft_Job
標題[請益] 解決不了別人的技術債真的是自己問題嗎
時間Wed Nov 6 23:57:49 2019
又是代po 跟前一篇不同人
直接貼上了不解釋
鄉民好
個人想請益
最近在軟體專案遇到不知所措的問題
即使最近習慣了莫名其妙龐大的程式碼
但要去修改居然會有 人為因素 上的難度
我簡單描述整個程式的狀況
就是class不是有成員函式之類的嗎
本來這個class單體模式就只給一個裝置使用
但因為後來考慮第二個裝置的實作
所以先前人的做法就是…
在一樣的class裡成員函式copy paste然後名稱後面補個2 然後因為又是保持單體模式
就變成一大堆函式都有類似以下寫法
if 裝置一
程式碼一
else if 裝置二
程式碼二
其中程式碼一 和程式碼二幾乎超過百行 根本看不出一不一樣
我想說物件導向的介面不會寫就算了 麻煩重複的程式碼用函式先暫時包起來好嗎…
說到這裡應該高手已經知道怎麼處理這鬼結構 但是 這難度最麻煩的是 人
因為就是某個資深工程師寫
當然已經 溝通過了 但回答是
「那些做法就是debug的時候很好用啊,怎麼了嗎?」
「從頭改需要時間,就算改好程式保證正常嗎?出事誰負責?」
「你能想想現實面的問題嗎?公司不是給你用來玩實驗的。」
「你可以從小地方慢慢改起啊,一定要一次動那麼多地方嗎?」
「拜託請你考慮別人請不要那麼自私。」
然後繼續過著大家加新功能修改功能還要順便整理他很有產量的程式碼。
所以怪我囉?
為什麼我還要配合別人的智商做事情
而且你還待十幾年
連C++好用的語言特性都不會用 更不肯學
還好意思裝忙 說什麼急著趕案子
那種鬼寫法是最拖時間的最玩命的吧
整間公司也莫名其妙
不好好整頓他居然還隨便期待有其他還不到一年的員工
可以解決這個每天被他拉出的x code
我現在是攤手沒輒 不太想再留在那浪費時間
在其他工作我也沒看過如此奇葩的現象
各位看的鄉民覺得是我的錯嗎
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.28.42.7 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1573055871.A.BB3.html
推 yamakazi: 一次改一部分 然後用自動UT驗 先shelve起來有空再上code11/07 00:00
→ yamakazi: 不然就新拉一個branch慢慢改11/07 00:01
→ MOONY135: 我看過 不過那個人一年後還是沒改11/07 00:03
→ MixBear: 這要始作俑者觀念跟著改,就算你改好了 再經他的手最後11/07 00:17
→ MixBear: 還是重複循環11/07 00:17
推 chuegou: 我都把前人技術債化為筆記 然後要改code都要先看筆記11/07 00:19
→ chuegou: 寫了四五本 每次要找東西也累11/07 00:19
→ viper9709: 這個就標準的疊床架屋...某方面說也算不重視開發11/07 00:31
推 abccbaandy: 還真沒看過在意code品質的公司...需求時程一下來就什11/07 00:33
→ abccbaandy: 麼都不管了XD11/07 00:33
推 ldkrsi: 非一人專案 沒高層支持千萬不要搞重構11/07 00:33
推 neo5277: 開branch加一11/07 01:11
→ vi000246: 反正各人造業各人擔 出事找他就好11/07 01:35
推 tvbic: 別人寫出這種東西是他自己白癡,你想辦法幫他解決那就更白11/07 02:10
→ tvbic: 癡了11/07 02:10
推 ko27tye: 對主管來說重構 = 沒產出 你敢在咪挺時說這兩個禮拜都在11/07 02:23
→ ko27tye: 重構嗎11/07 02:23
推 prag222: 改了會出錯阿 傻喔 你以為你新人又厲害會重構喔11/07 05:07
→ bndan: 基本上工作的重點就是做上面認為有產能的事 然後準時領錢下11/07 08:22
→ bndan: 班 在家爽/忙自己的事...除非這間公司的組織真的有讓你想加11/07 08:23
→ bndan: 入的情況 不然就領個薪水盡人事...11/07 08:23
→ bndan: 另外 沒有任何"保證"的情況下重構 這只是坑死自己而已 就算 11/07 08:24
→ bndan: 事實上你重構的都是正確的 但"證明"不存在 你可以是解決問11/07 08:24
→ bndan: 題的人 也可以是製造問題的人 XD11/07 08:25
推 flysonics: 廢渣耶 這什麼完全浪費物件導向優勢的寫法11/07 08:40
→ flysonics: 新案子剛開發的話你可以提倡看看啦 舊的就不要動他了11/07 08:42
→ flysonics: 不要沒事擔屎在身上11/07 08:42
推 t19960804: 上級只要能動就好了 你重構他們不會幫你加薪升官11/07 09:16
推 t64141: 這需要上面支持,而人跟程式碼品質都很差之下,換工作最快11/07 09:47
→ t64141: 對方回話方式這麼帶攻擊性也是很有毛病11/07 09:49
推 as885212: 這就是分工的重要性 分工分的好 大家就用interface溝通11/07 10:20
→ as885212: 內部自己的垃圾程式碼 自己負責11/07 10:20
→ as885212: 至於interface怎麼設計就是另外一個問題了 至少問題縮小11/07 10:20
→ as885212: 又不用管一些垃圾事11/07 10:20
推 popcool: 寫十幾年還是這種觀念,你還是快逃吧11/07 11:52
推 eatpupu: 塊桃R11/07 13:16
推 wuliou: 快陶R11/07 13:27
推 v7q4: 大專案又很多人做一做離職 就會變這種科學怪人...11/07 14:31
推 keyut2433: 這人一定沒寫test11/07 15:24
推 hidog: 為什麼你需要維護他的程式碼? 當事人又還沒離職11/07 15:32
→ hidog: 主管沒講話你管他幹嘛 閒沒事情做嗎 不會去唸英文?11/07 15:33
推 deray: 不合就閃人呀11/07 15:47
他說那個架構太核心
也剛好是他改的
所以舉凡各種不同種類的功能新增
都要好好加進他的x碼兩次
如果有函式增加的話
請自己把函式取名一號和二號喔謝謝
他也不想改 不過被老闆指定了無奈
他也謝謝你們放棄掙扎開始重找工作
The End
※ 編輯: bb0x0 (27.52.236.218 臺灣), 11/07/2019 18:54:46
推 hidog: 如果是這樣就閃吧 代表主管太廢 11/07 19:12
→ jason4571: 公司就是要賺錢優先 誰理你重構能幹嘛 辭職唯一解 11/07 20:39
推 jefflu: 如果是人硬要擋的原因 那也真的沒辦法... 但是如果只是他 11/08 05:55
→ jefflu: 提出的問題 那我覺得是蠻小的問題, 你可以自己開一個branc 11/08 05:55
→ jefflu: h 來改那個東西 確定改的都有test case cover到, 然後roll 11/08 05:55
→ jefflu: out的時候用alpha/beta version rollout. 先rollout給0.1% 11/08 05:55
→ jefflu: 的用戶試beta就可以了 有問題就直接設bets=0 一秒解決問題 11/08 05:55
→ jefflu: 所以他提的技術問題其實不是問題 11/08 05:55
推 jefflu: 另外他的寫法debug其實不會比較簡單 他可能真的不太懂寫co 11/08 05:57
→ jefflu: de... 11/08 05:57
推 leveger0903: 前陣子我也重構前同事不知所云的程式碼 不過主管覺 11/08 10:22
→ leveger0903: 得時間太久 11/08 10:22
→ leveger0903: 雖然我們公司不是什麼程式碼很乾淨的公司 但是很討 11/08 10:24
→ leveger0903: 厭不照公司規則走的同事 人離職了留那一坨不知道怎 11/08 10:24
→ leveger0903: 麼維護的代碼 不留git 不寫註解 11/08 10:24
→ leveger0903: 接手的人真的很衰 11/08 10:25
→ jones2011: 無解,因為既有的很難處理就乾脆無視 11/08 18:56
→ jones2011: 如果是不同裝置不同初始設定 11/08 19:02
→ jones2011: 那最好別碰這種code,因為你不知道哪一個才是正確的 11/08 19:03
推 pttuser2266: 改下去大不了離職 11/08 19:17
→ cha122977: 可以看誰寫的誰負責改 新功能用他的東西就讓他自己改 11/08 21:41
推 OhNo386: 改不動 可以亂改 解決a bug 產生b bug,解決b bug 產生c 11/09 10:05
→ OhNo386: bug ,這樣就有很多事可以做了,老闆也會覺得你很忙,無 11/09 10:05
→ OhNo386: 法取代 xd 11/09 10:05
→ OhNo386: 不過比正向的方式還是快點練功 跳到你看code順眼的地方 11/09 10:06
推 SHANGOYANYI: 欸... 是說別人的code你去動幹嘛? 11/09 15:58
噓 jamesho8743: 工程師名言 東西沒壞就不要修 菜鳥 你重構之後都不會 12/15 13:29
→ jamesho8743: 有問題嗎? 那要花多少時間去修? 搞了一大堆之後到底 12/15 13:29
→ jamesho8743: 跟原來的差在哪? code比較漂亮 速度快了一些 12/15 13:29
噓 jamesho8743: 你去公司本來就是你要去配合別人智商做事 不然是別人 12/15 13:37
→ jamesho8743: 配合你智商做事嗎? 自己開一間? 嘴巴講該怎麼做每個 12/15 13:37
→ jamesho8743: 人都很厲害 你那麼厲害那你應該能把那些問題輕鬆解決 12/15 13:37
→ jamesho8743: 現實是需要妥協的 12/15 13:37