Re: [討論] 重構跟kpi的考量

作者: handsomeLin (DoGLin)   2022-02-26 08:57:52
※ 引述《VScode (VSisBestIDEinTheWorld)》之銘言:
: 假設以下情境
: 有個功能A、B都會用到相同邏輯,且有兩份重覆的code
: (沒有unit test保護,而且年久失修 要加入unit test會需要更多時程)
: 現在要加入C,也會用到相同邏輯
: 身為合格的工程師 應該會把ABC重覆的部份提取出來
: 而不是讓這邏輯重覆三次
: 但以公司營運的角度來看 這次專案就只會測試C的部份
: 不應該動到A、B
: 這時就要冒著A、B壞掉風險重構,或是因為來不及加入unit test
: 就乾脆讓相同邏輯存在三個地方
: 身為專業工程師,我很想選擇重構
: 但過去的經驗告訴我
: 絕對要以kpi為最優先考量
: 於是程式充滿了註解、重覆片段
: 雖然靠著筆記、git log,能還原當時寫code的思路
: 但這些髒code就會永遠留存在程式裡
: 想問大家遇到這情況會怎麼做?
感覺這個標題就是個假議題,你說不重構A、B因為Unit test來不及寫,那你新寫的C就不
用unit test了?
然後你又說三個code一模一樣,假設你幫C寫完unit test了,那你不就也把AB搞好了嗎?
再退一萬步來講,AB沒有unit test大家用的那麼爽你還硬要去動也只是吃飽太閒,不如
好好寫你C的unit test,寫完大家就用C就好啦
作者: mmonkeyboyy (great)   2022-02-26 09:11:00
作者: xam (聽說)   2022-02-26 10:07:00
他是說ABC其中各有一小塊重複的,變abc..
作者: jlhc (H)   2022-02-26 10:44:00
這篇正解... 所謂的專業不是自己想怎麼搞就怎麼搞...
作者: pttano (pttano)   2022-02-26 11:34:00
評論要不要重構不能只看程式碼的邏,原原po應該是菜鳥.......................................邏輯
作者: knives   2022-02-26 14:09:00
菜鳥最喜歡重構了,以為很行
作者: abccbaandy (敏)   2022-02-26 14:41:00
推樓上,一堆沒經驗的整天在那邊重構,搞出一堆問題
作者: lovdkkkk (dk)   2022-02-26 14:44:00
不過就是要這樣 才會有經驗啊
作者: t64141 (榕樹)   2022-02-26 15:01:00
怎麼推文說得像是重構像是一種錯誤行為一樣...
作者: sniper2824 (月夜)   2022-02-26 15:24:00
不好說
作者: fadeawaygod (G.H.)   2022-02-26 15:30:00
重構只在有完善測試的情況下才能安全進行,測試越少風險越大,故重構並不是在每個context下都是好的行為
作者: nh60211as   2022-02-26 15:34:00
有些人重構跟亂寫沒兩樣
作者: now99 (陳在天)   2022-02-26 17:16:00
現有測試再來重構
作者: wulouise (在線上!=在電腦前)   2022-02-26 21:34:00
重構跟砍掉重練不一樣,一次改太多又沒測試沒bug才奇怪
作者: CaptainH (Cannon)   2022-02-26 22:49:00
Code的價值不在優不優雅 在於有沒有帶來新利潤請問你重構的目的是為了節省記體?為了執行更快?為了未來擴展性?還是為了規模化?不要只為了code不合"優雅"的定義而重構
作者: mmonkeyboyy (great)   2022-02-26 23:54:00
重構有時比砍掉重練難多了= =" debug 不如 deletecode 優不優雅這回事 可以加上註解 最終還是看出來的東西是什麼鬼 沒利潤真的懶 除非是要改架構再說不然光去找人協調就幾個月過去了
作者: superpandal   2022-02-28 20:23:00
重構要看你有沒有這個決定權以及是誰想要重構 有時候你想要重構上頭不准 有時候你不想重構上頭想 XD通常上頭想的不是上頭自己也操刀

Links booklink

Contact Us: admin [ a t ] ucptt.com