發表文章

目前顯示的是 9月, 2009的文章

我的 Java 學習歷程及建議書單

圖片
這篇本來只是要記錄一下我的 Java 學習歷程, 不過我在學習 Java 的過程中看了三本書覺得超棒所以也想推薦給大家, 雖然我當初看這些書時並不是按現在所列出來的順序, 但是看過了三本書後我覺得依照書的程度這樣看下來是最好的, 就給大家參考看看。 首先我第一次接觸到 Java 是在大學的網路多媒體實驗, 這堂課程注重的是自動自發的學習, 為了考驗這項能力要修這堂課前必須自己寫出簡單的小畫家程式, 功能不用太複雜,只要能畫還有拉出基本的圖形即可。 不過後來我還是有做出存取檔、填滿、橡皮擦等等的功能, 但這還不是最強的,其他的同學有可還實作出了回上一步等等的功能, 幾乎是把現有的功能都包了,超級強大!! 雖然這樣子自動自發的學習進步很快, 但因為不了解整個語言的架構一下子就上路後來陷入了只能看書改的窘境, 憑藉著強大的 IDE 和工具後來也做出了手機計算機和簡單的類 msn 通訊軟體, 不過對於程式基礎的學習並沒有太大的幫助。 將實驗修完之後我去上了 C#, 因為是通識課所以老師是從頭開始教起, 而這才第一次建立了我腦子裡 OO (Object Oriented) 的概念, 感覺就像是有什麼突然通了一般先前所有不懂的觀念都清楚了。 雖然我後來沒有繼續寫 C#,但走上寫 Java 的路真的是因為這堂寫 C# 的通識課。 真正在 Java 領域突飛猛進應該是進到圖書館當資訊助理了, 那段期間邊學邊用所以學了不少,當時也到恆逸去上了 SCWCD 的課程, 不過上課的進度很快所以到後來就跟不太上, 雖然在工作時也有用到一些,但你知道的, 半調子的東西想法觀念馬上應用在實際的作品上是很危險的。 因為感受到了自己基礎不足,而且考 SCWCD 前也必須先考過 SCJP, 所以我在四月中時看了 SCJP的聖經本 「Java認證SCJP 6.0/5.0--猛虎出閘」 , 我本身在學校及工作過程中就已經有些 Java 的基本概念, 看這本書準備 SCJP 考試時又幫我釐清了一些重要的觀念, 在做過模擬試題覺得都 OK 後就從容就試, 這張證照並不難考,當然輕鬆入袋囉! (2011.11.25更新) 猛虎出閘已經有了新版本: 猛虎出閘制霸版:最新OCP Java SE 6 Programmer專業認證(附原始程...

Firefox 附加元件:Tamper Data (修改Http Header的利器)

當初接觸到這個 Firefox 的附加元件 (add-on) 是有故事的, 那時候正用 Java 來做一些 parse 人家網頁資料來增進系統功能的程式, 因為也只是純粹測試所以沒有和對方先溝通過, 一開始都還很順利看著自己的程式跑出正確的結果非常開心, 但後來卻怎麼都無法得到正確的輸出,找了很久才發現是被對方給封鎖了... 然而第一次被封鎖時只有 Java 的程式檔被阻擋, 瀏覽器卻仍可以到達程式所需的頁面 @@, 和同事討論過後得到的結論是, 對方可能是利用 http header 中的 referrer 欄位來做判斷。 這時同事介紹給我 Tamper Data 這個好用的附加元件來做測試, 果然我一將 Firefox 的 referrer 欄位一清空就被阻擋了。 後續當然還有更多的故事,例如說我發現了 referrer 欄位的秘密後就修改了程式, 但在短暫的成功後對方又更新了阻擋的規則,而我們就這樣不斷地來回 XD。 整個過程有點像是攻防啦,不過當對方鎖了我的IP就沒輒了 QQ 總之上面只是個小故事, Tamper Data 本身除了查看和修改即將送出的 Header外, 更可以記錄 Firefox 發出的每一次 http 和 https 的請求與回應, 另外也可以清楚地看到請求和回應的時間歷程喔。 對於網頁或程式設計者來說, Tamper Data 都是一個不可或缺的好工具! 更多介紹可以參考: 實用的firefox附加元件(add-ons)及免費軟體大公開#20 -- Tamper Data 關鍵字:修改Http Header、Tamper Data、Firefox、add-on、 參考資料: Tamper Data 官方首頁 Firefox 附加元件 Tamper Data 實用的firefox附加元件(add-ons)及免費軟體大公開#20 -- Tamper Data