Java已經發展了十年,許多API都是後來陸續加上的,原始的API中,依然維持相當重要性的,應該就是屬於網路API。用Java寫網路程式非常容易,透過Elliotte Rusty Harold這本《Java Network Programming, Third Edition》(中文版《Java 網路程式設計‧第3版》),你將學會網路程式設計的所有細節。

本書告訴你如何發揮 Java 網路類別庫的優點,讓你輕鬆快速地完成常見的網路功能。本書不僅提供網路的一般背景知識,也會詳細討論 Java 對網路程式設計的各項支援措施。你將會學習到如何寫出能夠透過 Internet 共享資料的 Java 程式,實現遊戲、協同作業、軟體更新、檔案傳輸等應用。你還會學到 HTTP、SMTP、TCP/IP 的運作原理,以及支援 Internet 與 Web 的其他協定。

從網路基礎概念到網路API一應俱全

本書第三版的每個章節幾乎徹底改寫,讓內容符合Java 5.0現況,也大幅擴充了相關題材。本書共19章。前三章將會概要介紹網路和網路程式的運作原理。第 1 章介紹 Java 的網路程式設計以及可能的應用方向。第 2 章和第 3 章解釋Internet與web的運作細節,而這些都是程式設計人員必備的基本知識。第 2 章將會說明 Internet 賴以運作的協定,像是 TCP/IP 與 UDP/IP 等等。第 3 章將會說明讓網站得以運作的標準,像是 HTTP、HTML 和 REST。第4章和第5章將焦點移到 Java 程式設計的兩項關鍵機制:I/O 與 threading,幾乎所有網路程式都需要用到這兩項機制。有經驗的 Java 程式設計人員應該可以大略翻閱或直接跳過這兩章。第 6 章示範 Java 程式如何與DNS互動。讀完第6章之後,你可以直接跳到感興趣的章節。

第 7 章探討 Java 的URL類別,此類別是一個可以從多種伺服器取得檔案與資訊的通用工具。URL類別讓你得以不必理會協定細節,就能從網路伺服器下載檔案與文件。一旦能夠從伺服器取得 HTML 檔案,下一步就是對檔案做些事。HTML 的剖析(parsing)與呈現(rendering),這是網路程式設計人員會面臨的最困難挑戰之一,幸好,第 8 章會介紹一些鮮為人知卻可用來剖析、呈現 HTML 檔案的類別,讓你卸下重擔。

第 9 章到第 11 章探討 Java 用來存取網路的低階 socket 類別。第 9 章介紹 Java socket API。第 10 章示範寫出各種協定的伺服器。第 11 章示範用 SSL與JSSE保護用戶端和伺服端之間的通訊。

第 12 章涵蓋了 Java 1.4 所引進的新 I/O API。這些 API 是專為網路伺服器而設計的。它們能夠讓程式在試圖讀或寫 socket 之前,得知連線是否已準備就緒。這讓單一執行緒得以同時管理多個不同的連線,從而讓VM的負荷大為減少。第 13 章介紹 User Datagram Protocol(UDP)協定。第 14 章示範如何使用 UDP 同時與多部主機通訊。

第 15 到第 17 章則會深入探討URL類別底層的基礎架構,以及protocol handler與content handler,大部分的程式員可以略過這三章不讀。第 18 與 19 章將會探討 Java 網路程式特有的兩套較高階的程式介面:遠端方法調用(Remote Method Invocation,簡稱 RMI)和 JavaMail API。

範例豐富讓了解API用法更容易

本書讀者必須對 Java 語言與其開發環境有基本的認識,並具備一般的物件導向程式設計概念。讀者必須熟悉 Java 語言的語法,而且至少曾經寫過簡單的程式。讀者還必須對網際網路的使用相當熟悉,且知道如何撰寫簡單的 HTML。如果你不會Java,建議先閱讀《Head First Java, 2nd Edition》(中文版《深入淺出Java程式設計第二版》)。

本書具有豐富的範例,每章會有一個以上的複雜範例程式,用來示範該章所介紹之類別和方法的實際用途,所有範例可直接從網站下載。本書作者允許讀者將這些程式碼運用在程式中,不必經過作者特別的許可。

從九年前讀過這本書的第一版開始,Elliotte Rusty Harold就成為我最喜歡的作家之一。這九年來,本書的三個版本都沒錯過,非常喜歡Elliotte Rusty Harold這種鉅細靡遺又循序漸進的寫作風格,讓我獲益匪淺。

Java Network Programming, Third Edition
Elliotte Harold, Elliotte Rusty Harold/著
O'Reilly出版
售價:39.95美元
推薦:Amazon三顆半星

《作者簡介》蔡學鏞
清華大學資訊工程碩士,寰震科技技術顧問。曾任華碩集團軟體工程師、元智大學資訊系講師、美商歐萊禮出版社顧問、台灣微軟特約專欄作家。

蔡學鏞曾參與設計清華大學 Java VOD 系統,該系統並獲得第一屆 Java Cup 比賽校園組冠軍。蔡先生著譯有數本 Java 書籍,並在台灣和中國的雜誌開闢技術專欄。

Java Net原文暢銷書排行榜Java Net原文暢銷書排行榜

1.Java Network Programming, Third Edition
Elliotte Harold, Elliotte Rusty Harold /著
O'Reilly出版
售價:39.95美元
推薦:Amazon三顆半星

第三版涵蓋JDK 1.5中100種以上的更新,清楚地介紹開發Java網路應用程式(亦包含Applet),書中提到從網路基礎到Remote Method Invocation(RMI)的各種相關資訊,章節中包括TCP和UDP sockets、分址多送協定(multicasting protocol)、內容處理器(content handlers)、servlets、多執行緒的網路程式開發、輸出入、解譯/顯示HTML、Java Mail API和Java Secure Sockets Extension等。由於開發人員的需求,本書亦大量提及新的輸出入API。

2. APIs and Protocols For Convergent Network Services
Stephen Mueller, Stephen Mueller /著
McGraw-Hill Professional出版
售價:49.95美元
推薦:Amazon四顆半星

本書適合在電信軟體開發領域的初學者當成字典參考,包含了H.323、SIP和相關API的介紹,書中包含JAIN(Java Integrated Networks)和Parlay的API細節,完全以物件導向式環境介紹,而且JAIN和Parlay的發明者也為本書內容背書,可供電信業者的專家開發軟體,同時探索新興的通訊協定和實作API。

3. Java Network Programming: A Complete Guide to Networking, Streams, and Distributed Computing
Michael Shoffner, Derek Hamner, Merlin Hughes /著
Manning Publications出版
售價:49.95美元
推薦:Amazon四顆星

本書提供Java平臺API所支援的網路與輸出入詳細資訊和範例經驗,提供簡單的快速開發範例。第二版有300多頁新篇幅,包含URL相關的Factories、Java輸出入、RMI、Servelets和CORBA。

4. Java Network Programming
Conrad Hughes, Michael Shoffner, Maria Winslow, Merlin Hughes, Conrad Hughes /著
Prentice Hall Ptr出版
售價:39.95美元
推薦:Amazon五顆星

本書包含封包、執行緒和常見的主題,如資料流和相關變化。內容提供Java環境的密碼學運用,深入探訪Java環境的DES與SHS的對稱式加密與雜湊(Hash)處理標準,是此書與其他同類書最大的差異,不過在RMI方面內容較單薄,而且沒有很關切新的Java API,例如與CORBA相關的部分,隨書附贈的光碟具有書上的主從式與點對點架構的程式碼,同時內含協同工具。
資料來源:Amazon.com,2005.11.29

熱門新聞

Advertisement