星期一, 12月 17, 2007

改程式

昨天作最多的事情就是去改系學會的程式。因為當初設計錯誤的關係,權限系統的類別寫的很沒有效率,導致很多地方用一大堆hack,幾經考慮,覺得長久以來對於系統的可維護性和可擴展性有很不利的影響,所以就決定把權限系統的類別重構了。

重構的工程可說非常的龐大,首先資料庫的結構要進行修改,但又要考慮到資料庫的現有資料,所以我只好摸摸鼻子寫了一個Converter把現有的資料轉成新的格式,中間又牽涉到現有資料的備份和語系亂碼的問題,光這個問題就耗去不少心力。再來是修好我程式中的一大堆hack,因為類別底層架構寫的不好,所以類別提供的介面無法完全滿足實際上的需求,所以系學會程式碼有一大堆地方繞過類別直接讀寫資料庫囧rz。所以又花了一大堆時間把這些hack全部找出來,經過無數的修改、無限的regression和無限的debug以後,才總算在測試用的系統上成功運行。

接下來懷著忐忑不安的心情,把真實系統的程式碼和資料庫備份以後,跑Converter,傳程式碼,然後馬上打開系學會和班網,總算是令人安心的一切正常。對外部的使用者來說,會注意到的大概就幾個我順手改好的UI修正,還有忘記密碼重新註冊的時候原有的權限和群組不會全部不見,其他的感覺應該還是差不多,應該沒有人會注意到下面的架構已經被天翻地覆的大翻修了XD

還有好多共筆和報告,真是累死了orz 全文連結

2 意見:

Arrakeen 提到...

自從用了 Jifty::DBI
資料庫也可以無痛重構了 XD

d8888 提到...

很高興打關鍵字跑去看了一下
結果是Perl

偶不會Perl啦(畫圈圈)