Code不如舊
經歷三份程式工作
內容大部份是自家產品
而非外包的專案
常常有機會維護超過五年的程式碼
以前的我總是認為
舊程式都是上個時代的餘孽
因為沒有時間去剷除他
所以才放任它一直作怪
像是罪大惡極的Visual Basic
或是為人詬病的Web Form
即使知道它以前的豐功偉業
但開發時總是敬而遠之
畢竟大家都比較喜歡.Net Core
Docker, k8s這些新潮的東西
不過隨著開發時間越來越久
才慢慢發現
老舊的程式碼
不一定就比較爛
反之還常常看到令人讚嘆的設計
像是方便擴充的接口
或是偵錯上的小巧思
而新的專案
有時候是對於新技術的不熟悉
有時候是參雜太多工程師的野心
或是還沒有經時間淬鍊
看起來就是急就章的寫法
相比舊專案
少了歲月打磨的光亮
.Net Core的專案
不一定就真的好棒棒
Web Form的專案
也不一定就散發老人臭
專案的品質
還是取決於程式碼的好壞
而不是框架的新舊
舊專案可能檔案比較多
編譯時間比較久
有可能CI/CD流程比較舊
無法輕易更動
但它們身上
仍然有許多值得學習的地方
在面對舊專案時
還是多保有一點謙遜
向前人的智慧取經
並且努力讓現有的專案
不要變成禍害後人的遺毒
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Frank's Talk!