當我正傷腦筋該挑選哪一本書做為Servlets與JSP的訓練教材時,突然想到蔡學鏞在本報第189期如此評論《Head First Design Patterns》:「我認為,這本書的作者全都是變態……畢竟要把這麼枯燥的主題寫得這麼有趣而學習效果又好,不是變態的作者還真是做不到呢!」因此我想:既然Head First系列也有一本Servlet與JSP的書,何不試試看呢?

幸虧我選了這本《Head First Servlets & JSP》,直接把整本書投影出去就能開講,更讓我邊講邊笑。這都要歸功於三位超級變態的作者。

變態得恰到好處
怎麼個變態法呢?我舉幾個實例。技術書籍往往惜圖如金,有示意圖就很不錯了,能逐格呈現分解動作的就更屬鳳毛麟角,多半只是把數個循序動作全都一股腦地塞入同一張圖,再標上密密麻麻的步驟1、2、3記號。但本書一反常態,不僅示意圖特多,連分解動作都不吝一個個給它們獨立的版面,不必勞駕讀者交叉比對。

因為本書幾乎每一頁都只呈現單一觀念,版面上自然免不了有許多留白(是不是和投影片的風格很像呢)。變態的是,作者居然在此擺上一堆暴笑的人物圖片、獨白、對白、抬槓,內容不僅發噱,更多的成份是刺激讀者進一步思考正反議題,頗具寓教於樂之效。或許書籍製作小組裡面有華裔人士吧,不少畫面都是取材自邵氏時代的香港功夫電影,像第二章開頭那位帥哥好像就是年輕時的衛子雲……

別說你還學不會
如此的搞笑,一方面也是為了加深印象,促進記憶。
由於SCWCD認證考試也就是這幾位出題的,因此本書有許多設計都是針對應考族群而來。像重要的觀念,會不厭其煩地在用到的場合,用不同方式重述一遍,還穿插精心設計的練習題及模擬試題。作者果然是深諳學習心理的專家。

不過可別以為本書只定位在考試秘笈。對於軟體開發者而言,本書採取的Top-Down方式,給你扎扎實實的架構觀。一開始就介紹Servlet、JSP、HTTP的架構角色,讓你盡早有個大局觀及可操作的佈署實例,不像許多Bottom-Up的同類書籍,太早陷入語法細節,讓人昏昏欲睡。第二、三章更是一絕,以簡單的網站應用實例,逐步帶你改版成 MVC式(也就是Model 2架構),這可是其他書籍會拖到最後幾章才敢碰觸的議題!我非常欣賞作者這種做法。

接下來幾章仍然以饒富趣味的方式,逐一探討Servlet的請求與回應、屬性、listener 及Session。等Servlet介紹得差不多了,架構觀夠扎實了,第七章起才較完整地探討JSP、EL、JSTL、自訂標籤。如此安排章節順序的好處是:許多技術細節,一定得站在Servlet 的層次才探討得清楚;把Servlet 基礎扎穩了,形形色色的JSP技術自然一點就通,也才有能力適應往後更多元的Scripting技術。
常用語法介紹完畢了,第十一章完整探討Web應用系統的部署設定,第十二章探討安全議題,第十三章探討過濾器,第十四章簡介幾個重要的J2EE Design Patterns以及Struts。

看完這本書後,我真的好期待它的姐妹作《Head First EJB》趕快改版,加入EJB 3.0的革新內容。

講幾個瑕不掩瑜的事
這麼有趣易學的書,厚度已直逼八百五十頁,自然得割捨一些與SCWCD無關的周邊議題。像字元編碼(尤其是Big5、MS950、UTF-8等中文處理)、JDBC、Ant等(雖然嚴格來說,這些都不能算是一本Servlet/JSP 書籍的應盡義務),你得尋求其他管道。

JavaWorld@TW論壇裡有人對此書中譯本頗有微詞。我個人的看法是:或許是譯者對排版作業涉入不多,校對程序也不足,導致錯別字、漏字、錯排情況稍多了些,但大多易於察覺,也不太影響技術正確性。

當然啦,如果你旨在考取SCWCD,那麼最好上網找找勘誤表,尤其是模擬考題的答案。

《作者簡介》葉秉哲
交通大學資訊科學系博士後研究員,過著研究、顧問、授課、寫作的組合式生活。曾在國立交通大學、明新科技大學、國立台北護理學院等地授課,學術研究興趣計有:分散式系統、軟體工程、人工智慧、自然語言處理,譯有 C++、Design Patterns 等聖經本。

熱門新聞

Advertisement