工作經驗夠久的工程師應該或多或少都會遇到這個狀況,想說趁今天花一些時間談談這個可能有點敏感的問題。
先聲明我不是反對複製貼上程式碼的人,我只是想從自己的角度出發,探討為什麼會發生這個狀況?以及這個狀況可能會造成什麼問題?以及思考可能的改善方向。
根據經驗,複製貼上的程式碼大致有以下特徵:
以上特徵造就複製貼上的程式碼很難被模組化。
或者就算要模組化,中間也需要花時間去釐清哪些是重複邏輯而且可以拆分出來的部分?
在開發時間不太夠的狀況下,可能還是會先選擇用複製貼上的方式度過,而未來也不一定有時間可以重構程式碼
最容易發生的狀況是需求調整或程式重構,因為相當於一份程式碼有兩個複本,所以改動的時候兩邊都要確認是否都有改道?
也有一種狀況是維護的人並不曉得專案中其他地方是否有存在邏輯相似的程式碼?雖然功能調整並沒有提到另外一個地方的程式碼是不是要一併調整?這種情況就會讓人需要花比較多心力去確認,相對來說會消耗掉比較多時間
其實筆者目前處理這類狀況的經驗還不是很多,只能從預防勝於治療的角度提出一點建議
增強危險意識,發現自己在做複製貼上的事情時,先註記下來,提醒未來的自己注意
以上,今天花一點時間談談關於開發時遇到的一些問題,也歡迎大家在底下留言區分享自己的經驗
我們明天見