這樣的專案還有價值重構嗎?

liujian1979發表於2012-06-25
如果有這麼一個專案你該如何去重構呢?

1.三個獨立的專案使用一個資料庫。資料庫沒有E-R實體模型,沒有設計文件,也沒有任何關係圖,表之間沒有外來鍵關聯(意味著逆向工程不可用),所有表關係、資料完整性和約束全部由儲存過程控制(10年前這麼幹過,但今天居然又看見了,感概啊!)。

2.專案沒有設計文件,只有一個介面文件,介面中有部分引數意圖不明,也沒有人能夠解釋意圖不明的引數出現的理由

3.程式碼中沒有任何註釋,主要靠英文名字去猜。框架運用的是spring+mybatis,但spring+mybatis使用方式居然使之無法使用事務。也不支援任何的物件快取,也沒有設計查詢快取的呼叫。

4.也沒有做到介面與實現類的一一對應,很多實現類呼叫一個介面,增加耦合度不利於擴充套件,而且需求變更介面一動全得動

5.程式碼中全是警告,沒有工整性,程式碼儼然就是給機器讀的,難於閱讀和理解。

我在想這樣的專案個人認為已經失去了重構的意義,因為需要動的地方太多,首先資料庫、設計、程式碼基本都沒有任何留用的價值。但公司領導一直髮出的資訊就是“資料庫儘量延用!程式介面儘量延用”。我感到可怕,這樣的專案有太多風險不可控了,怎麼延用啊?

真正的重構首先要:基於程式碼易讀、工整、嚴謹,程式碼測試的完善,資料庫設計的合理和科學。其次就是才能按模組的逐步重構和修改。

資料庫的混亂、程式碼基於機器可讀,這樣的專案還有重構的價值嗎?

相關文章