消失的程式


考 上研究所之後,家人送了一台notebook給我,主要也是新竹台北二地這樣跑,有一台notebook比較方便,而我原本的桌機就拿去樓下給我爸媽用 了,在我重新整理硬碟資料時,我不小心把一些舊的資料遺失了,其中包含了我E:\下的一個叫做javasrc的目錄,裡面放著我平時沒事寫的Java程 式,雖然那些程式大多不值錢,不過從大一累積到大四也不少,想一想也覺得有點可惜。目錄裡面除了我沒事寫的application之外,還有以前我修課 時,覺得某個東西有趣的話,我有空就會把它寫成程式。

這讓我想到一件事,今年清大考了一題 KMP string search (Knuth-Morris-Pratt) 字串搜尋法,這個演算法要先對欲search之pattern算出failure function,這個演算法我也不知道為什麼,好像從來沒有被出題者著重過,考古題從來沒有寫到過,補習班老師連提都沒提過,可是很巧的,我大二修資料 結構時就曾經將這個東西寫成Java Code,即使已經整整二年沒有重新去review這個algorithm,我還是很輕鬆的寫出了答案,而且那題還有點小陷阱,故意要你從1開始,而不是 從0開始算。

這些程式都消失了,其實心裡覺得有點不捨,還有我大一時寫的聊天室,還有一堆實驗OpenSource軟體時寫的測試程式,真可惜啊。還好我在大三時就有在JavaWorld分享程式,所以有一些程式可以在JavaWorld的程式分享區找到,至少沒有失去全部...

台鐵自動訂票程式
限制速度下載
記憶遊戲
DeepGreen
Huffman最短編碼實作
Mathenobita - 函數繪圖
4M - PostIt!
陽春月曆
陽春跳板
JyDE - 陽春Jython開發工具
LoseAmp - Winamp最強勁的對手 (未完全實作完成)

其 中我覺得最有意思的,當屬LoseAmp了。這個程式我沒有在JavaWorld分享出來,因為當時我使用的mp3 library沒有開發完成,他們並沒有實作快轉與倒轉的功能,所以我的LoseAmp也沒有辦法快轉與倒轉。這個程式是當時我修Java應用系統與軟體 工程時,寫來繳期末Project用的,寫這個mp3 player的過程我學了不少的swing,當時幾乎每天都要用msn問Duncan問題。(這也是為什麼我後來分享的程式老是愛用JDialog的原 因)。現在只剩Executable Jar,沒有Source Code了。

另外,就是專題的程式了,專題的程式也已經不在我硬碟裡 了,不過同組的張胖,還有老師他們都有Code,那個程式大概是我寫過最複雜 的程式了,它複雜的原 因是我要實作Agent彼此之間的Negotiation策略,加上又是使用網路分散的,所以流程的複雜度相當的高,倒也不是Code真的有用到什麼困難 的技術,複雜的是問題的本身。Networking的部份,使用Object Input/Output Stream,在後來幾乎所有的I/O溝通都已經被我抽象化了,只要簡單的寫個 sendMessage(from,to,message) 就好了。

消 失的程式不只這一些,還有我寫的組合語言,雖然我現在已經幾乎全部忘光了,但我記得當時常常寫到天亮。還有一個web application,是我寫給我哥的,我哥幫別人辦信用卡,需要一個管理的程式,當時我正好SCWCD準備的差不多了,處於寫web application最強的階段,我還記得我一二天就把那個web application給寫出來了,因為連查書的時間都省了,是很基本的web application架構,即JSP/Servlet,然後能夠新增,修改,查詢,統計database裡的資料,那個程式現在也消失了,滿可惜的。

消失的程式們...再見了。

留言

匿名表示…
定期備份。。。定期備份。。。買個外接硬碟或是燒錄器。。。重要資料定義移至另一個硬碟或燒錄起來吧。。。容量小的我會先丟到大姆哥去。。。
Yoshi寫道…
慘劇的發生
往往就是自己太懶惰了...

這個網誌中的熱門文章

岩窟中的聖母

竹林中學40年校慶

Lab & English