星期一, 11月 24, 2008

繼續寫程式

相關的物件完成以後,下一步就是把物件帶到系統裡面去,事情可以分成兩個步驟進行:第一個步驟是把現有的code全部改呼叫新物件,第二個步驟是寫出轉換器,將老物件使用的資料表,轉成新物件可以讀取的資料表,然後備份現有的程式碼和資料庫以後進行轉換,程式碼上傳,大功告成!

不過誠如一句名言所說:預估的時間乘以三才是實際需要的時間。我拿註冊頁面拿來套物件,結果明明已經測試完畢的code開始爆出一大堆問題,更奇怪的是檢視那些code,犯的都是很愚蠢的錯誤,但不知道為什麼當初弄單元測試的時候就是沒發生問題,比如明明應該用陣列包起來的參數,沒有用陣列傳進去卻可以動。或是一個已經多年運作正確的code,換了新物件才發現裡面有個老大的bug,會讓程式碼得到應該完全相反的結果,但不知道是哪隻bug cover了他,讓整個script多年來運作的結果都正確orz。還有一隻很炫的bug,就是只要呼叫我新物件的某function,整個script載入後就會reload,神的是我那個物件的該方法根本就沒有作任何瀏覽流程相關的事情,而且這個bug只出現在firefox,用IE開是好的.....

整體來說,程式碼的災情相當慘重,新寫的物件會爆炸就算了,就連Good o'l code都不安全是怎樣Q<>Q 全文連結

0 意見: