Re: [討論] 寫程式的追求?

作者: bantime (景)   2025-04-03 11:28:36
因為前人雜亂
作者: O187 (187cm)   2025-04-03 11:42:00
我也曾寫c#的lamda被人嗆 這只有你會寫 沒人這樣寫也有開發一半的程式一離職被程度不佳的整個重寫 後來他作不出來也跑了
作者: ILoveAMD (AMD)   2025-04-03 11:46:00
lamda等語法糖 很大的原因是原始設計偏向囉嗦 才改成這種奇妙的簡寫
作者: stepnight (桃卡武康)   2025-04-03 12:48:00
曾經寫個功能易於擴展,不用動舊Code只要新增,在介面都寫完整註解離職後聽前同事說有個新人一來就說要重構整天說:這怎麼這樣寫、那怎麼這樣寫後來過一陣子問前同事是重構成怎樣了:他後來發現好像也只能這樣寫了
作者: wulouise (在線上!=在電腦前)   2025-04-03 14:01:00
我寫過c#到現在還是不懂linq
作者: springfeel (老人星)   2025-04-03 14:50:00
通常半調子的新人就是會有一堆美好想像 估計自己寫的code後人來看也是嫌的像一坨屎
作者: NDark (溺於黑暗)   2025-04-03 19:17:00
其實不用後人 每個人半年後都抱怨半年前自己在寫甚麼但都沒想到 自己正在寫的 半年之後的自己也會抱怨其實只有(商業)邏輯的"參數"才是黃金 程式碼都能花錢造實作過程的所累積的經驗在人身上 這樣的人才重要
作者: hobnob (hobnob)   2025-04-03 20:23:00
真的很多工程師不是自閉就是自傲欸
作者: superpandal   2025-04-03 22:39:00
不然呢 重構本身就是要先幫助自己 雖然我通常是不重構那個 因為應該是沒收益效能情況我沒見過屎山效能好的 我自己從頭開始整的效能倒是很不錯
作者: VScode (VSisBestIDEinTheWorld)   2025-04-03 22:43:00
超級討厭過度設計的 搞到不知道在寫三小 我寧願看義大利麵糞扣 也不想看一堆封裝繼承oop
作者: superpandal   2025-04-03 22:51:00
我也討厭過度封裝 我一直視為前人的陰謀 但基本架構還是要有的 否則全義大利麵也是很痛苦全義大利麵只有給其它不相干的人最適合 可以搞生成code自己內部看的與給別人的是不一樣的 模版有無限可能現在前端也差不多這樣 compile再compile
作者: stepnight (桃卡武康)   2025-04-03 23:08:00
全義大利麵code就是給免洗員工最佳架構反正誰來都可以繼續維護
作者: superpandal   2025-04-03 23:09:00
商業邏輯參數也都不是黃金 多半只是公司專用的產物都免洗了還想維護義大利麵code 稍微施加需求壓力就爆了的東西 當然是能省心就省心有經驗應該知道省心才是第一要務 其它根本不值得care當然有些人會想別人不省心我不就省心了嗎
作者: jlhc (H)   2025-04-04 00:14:00
全義大利麵真心不行... 要修改都牽一髮動全身..
作者: viper9709 (阿達)   2025-04-04 01:07:00
推新寫的用新方式,舊的有異動的部分再去調+1
作者: prag222 (prag)   2025-04-04 04:56:00
之前我手上重構也是排自己的工時進去,就整理一下包成物件不然每次呼叫都一堆重複程式碼跟麻煩的細節設定有的功能你用早期web程式一行一行跑script lang會搞死人
作者: pot1234 (鍋子)   2025-04-04 08:10:00
效能變差我就覺得不算成功的refactor了。前人寫那麼差的話怎麼可能refactor到效能變差
作者: a12838910 (Ziv.C)   2025-04-04 08:56:00
linq 很棒欸我自己是真的遇到前人 寫很多累贅的程式碼在不影響邏輯的前提下優化後 少了很多行
作者: shooter555 (shooter)   2025-04-04 09:58:00
架構變好 效能變差很有可能啊 因為為了封裝 可能會多了不少資料傳遞的動作
作者: alan3100 (BOSS)   2025-04-04 12:54:00
第3種就同事平均程度太差 async/await不懂的其實很多就算小部分重構或新的才用新寫法 最終還是只有你能維護
作者: devilkool (對貓毛過敏的貓控)   2025-04-04 13:52:00
.NET開發者用async/await很基本了吧 除非傳慘= =
作者: Firstshadow (IamCatづミ'_'ミづ)   2025-04-04 15:41:00
= =
作者: art1 (人,原來不是人)   2025-04-04 17:58:00
用習慣了 .net 跟 js 的非同步,python 的好難用...
作者: Csongs (西歌)   2025-04-04 18:43:00
就說是文人相輕
作者: testPtt (測試)   2025-04-04 20:21:00
看程式的規模 例如你要寫一套作業系統 不得不細分功能
作者: shortoneal (不告訴你咧)   2025-04-04 21:51:00
這種議題沒看到code一率都是保留態度,自我感覺良好的人很多lol
作者: rogerlarger (宅)   2025-04-04 23:09:00
讀別人的code就像吃別人的屎,吃習慣就好
作者: superpandal   2025-04-05 03:52:00
那就只有程式碼表現方式不同 概念想法做法很久前就有了 不會差太多 含效能 硬體拿來比就....習慣當然會有效率不同的問題 只要自己不用再維護別人愛怎麼重構責任也不在你架構變好效能變差多半不是封裝導致 無用封裝再多層也起不了作用 過於誇張的太少見 這也是為什麼框架可以藉此濫用用來隱藏實作細節的原因過度封裝的問題點在於擾亂視聽
作者: wizozd84070   2025-04-05 08:02:00
學會習慣也是一種學習
作者: VScode (VSisBestIDEinTheWorld)   2025-04-05 11:01:00
放下它 加入它 學會寫糞code以後很爽的 自己維護很快別人看不懂 效率upup
作者: hakama99 (雜醬麵)   2025-04-05 11:11:00
我第一次看到lamda覺得是邪魔外道XD
作者: NDark (溺於黑暗)   2025-04-05 11:19:00
我覺得lamda就是一時爽 比複製貼上有得拚時程很趕沒辦法顧好品質是勉強用了 但長期維護就很難
作者: VScode (VSisBestIDEinTheWorld)   2025-04-05 13:03:00
我也不喜歡linq 底層封裝太多東西了 表面看起來很方便 但很容易踩到效能陷阱 還是自己手刻安心些
作者: superpandal   2025-04-05 20:43:00
只要不被要求deadline前做好 被事後檢討那習慣倒是還好 不然自己產出被檢視也很麻煩只顧自己那不就是鬥後人? 由此可見職場風氣真的差理解糞code並不是說絕對不好 但如果你是被壓時間又要理解別人的糞code那很痛苦
作者: stepnight (桃卡武康)   2025-04-05 21:04:00
不過你各位公司都沒有規範/CR的嗎?
作者: superpandal   2025-04-05 21:13:00
異地而處馬上又換嘴臉的太多了 糞code都不是最嚴重最嚴重的是雙標 大家互吃糞都還沒那麼不平衡
作者: strlen (strlen)   2025-04-05 21:45:00
不是這個問題 糞不糞code當然不是你說了算 是團隊說了算所以要頻繁跟人家吵架改code 偏偏工程師誰要跟人家吵這個
作者: ricky60324   2025-04-05 23:33:00
不寫單元測試的我覺得才是最靠背的 有寫單元測試架構不會爛到哪邊 因為寫測試的時候很難寫就會自己改了遺留的code 沒有規格書 沒有單元測試 能賺錢也不代表他不糞XD 而且技術債遲早要還的當然大家都抱持著 不要爆在我手上就好 重構不是必要也建議不要花時間重構 新的code再寫好 舊的能動就好
作者: tsaigi (菜雞)   2025-04-05 23:54:00
async/await 感覺真的很多人不懂 之前整個公司十幾個專案都用到有問題的寫法 程式一直crash 還要我這個SRE下去修
作者: viper9709 (阿達)   2025-04-06 00:49:00
推學會習慣也是一種學習XD
作者: nicetw20xx (哇愛台灣)   2025-04-06 09:00:00
推有寫單元測試,程式不會差到哪
作者: testPtt (測試)   2025-04-06 09:37:00
寫成非同步有時候只是習慣 介面不會卡就懶得改了
作者: aa0983163178 (Yuki)   2025-04-06 11:01:00
我覺得不懂的技術,反而不要用比較好,遇過同事為了想寫非同步,結果線上一堆奇怪且難以解釋的bug XD
作者: tsaigi (菜雞)   2025-04-06 13:25:00
不懂確實不該用 但如果每個新技術都不懂 就等著被淘汰吧
作者: superpandal   2025-04-06 22:35:00
最好有那麼多時間寫測試 測試本來就是寫的爛才需要保證 趕快寫好趕快休息才是真的給你寫測試架構爛都是沒救 萬變不離其宗 掌握根本才是最省心的 我講話也差不多這風格發散的東西就是屎有脈絡的程式程式才反而不差
作者: fatb (胖逼=口=)   2025-04-07 18:05:00
我的經驗是除非你是公認的大神 不然不會有誰想看別人的code
作者: wulouise (在線上!=在電腦前)   2025-04-07 22:00:00
不寫測試只爽到自己...
作者: waiwailove (waiwailove)   2025-04-07 22:19:00
寫C#還在串sql語法 call預存程序處理問題...
作者: alan5 (小安)   2025-04-09 16:29:00
寫測試很難寫就會改? 我通常只看到屎扣寫了更大陀屎測試來給你聞有些code寫一個測試就可以穩跑兩三年有些寫了100個測試 還是只能撐30分鐘你覺得重要的是寫測試?
作者: superpandal   2025-04-09 20:28:00
樓上正解 有機會變成測試就是屎山搞到程式失控都沒用 本身質量好就好寫測試 錦上添花有時間可以做 不然光需求變更就掛了架構好通常只需要小補當然可以爽自己 也不見得不爽到別人
作者: h920032 (王者迪西)   2025-04-11 18:14:00
C R A F T C O D E

Links booklink

Contact Us: admin [ a t ] ucptt.com