編輯推薦
BBS、IM、微博,網際網路到移動網際網路的
交流平台將更加深刻地改變世界。
這些社會現象後面的技術本質是如何煉成的?
本書為你抽絲剝繭,揭曉答案。
內容簡介
本書結合項目實踐、構架設計、行業知識介紹和學習方法分析為一體,講解了從原始的命令行聊天室到流行的Twitter系統的技術實現和構架分析。本書將帶領讀者分析完成具有行業代表性的仿QQ IM項目、中國移動CMPP網關項目、仿Twitter系統三大典型項目的構架設計和實現。在具體的項目實踐過程中,融入了TCP/IP編程、設計模式、UDP編程、P2P通信、通信加密技術、Java NIO技術、JMF視頻通信、RMI遠程調用、hessian Web Service、Memcached快取系統等技術專題。目的是通過由淺入深、項目驅動的實踐分析,讓讀者深入掌握Java網路編程和網路通信項目的構架設計,並引導啟發讀者能自行分析技術表象背後的原理。
本書面向有一定Java編程基礎的中高級讀者和初入行的一線軟體開發者,也適合作為高等院校相關專業師生的參考書。
目錄
緒論
第1章 JavaKe起步:聊天室的實現
第2章 JavaKe:典型IM系統的實現
第3章 JavaKe擴展:連線移動CMPP網關
第4章 通信高級技術分析
第5章 JTwitter系統實現分析
序言
1.本書緣起
本書是我在近十午軟體開發和培訓生涯基礎上的處女作。談不上十年磨一劍,至少也包含了我兩年的思考。圖書的緣起首先要感謝的是人民郵電出版社的蔣編輯,沒有他的梳理規劃和鼓勵,本書的內容可能永遠只是我頭腦中的片斷。促使我能堅持把這本書寫完的動力,來源於我在藍傑所帶領的學生們的期盼和學習熱情,感謝你們!當然,寫作本書的時間是我的同事陳九龍、熊向軍先生長期的加班所換取來的,一句謝謝無法全部代表我的感激。
2.本書特點
(1)項目驅動。
本書的技術點主要是網路通信、安全加密和項目設計構架3方面。講解的技術要點有TCP/IP編程、設計模式、UDP編程、P2P通信、通信加密技術、Java NIO技術、JMF視頻通信、RMI遠程調用、Hessian Web Service、Memcached快取系統等。這些看似難以理解和掌握的技術要點通過循序漸進的案例實踐,被一步一步構建到一個完整的項目中。讀者只要跟隨本書一路走下來,至少能實踐完成3個典型項目:仿QQ IM項目(JavaKe)、中國移動CMPP網關項目、仿Twitter項目(JTwitter)。同時,讀者還可對相關行業業務知識進行詳細深入的了解。有實踐項目,才有深入理解,才叫做“掌握技術”。
(2)啟發式講解。
做老師的經歷讓我明白“老師沒有權力直接告訴學生答案”的道理。本書的目的不僅限於告訴讀者“可以這樣寫代碼”,而是通過提出需求、分析技術實現、分析缺陷改進、提示原理探究的漸進式講解路線,充分調動讀者實踐和思考的積極性。在掌握技術要點、完成實踐項目的同時,希望讀者明白:可以這樣實現、還可以那樣實現,兩種實現有什麼優劣點,各自的原理是什麼。
另外,本書中的代碼不是僅為“示例”而編寫的,從每行代碼的註解命名到類與類之間的關係分析,都是合乎規範和經過嚴謹思考的。“代碼就是程式設計師的小說”,希望讀者能注重體會本書的代碼質量規範和其中的設計思想。
3.本書讀者對象
如果讀者已有幾年的Web開發工作經驗,卻開始漸漸厭煩千篇一律的CRUD代碼操作,編寫“優雅、藝術”性代碼的機會越來越少,編碼就像是在各種現成框架中做填空題一樣。本書將為你打開Java技術的另一個精彩世界。
如果讀者是正在學習Java開發的征戰者,對執行緒和I/O有些粗淺了解,卻被各種名詞堆砌的Web(J2EE)技術搞得眼花繚亂,急切地想去掌握那些能以不變應萬變、根本性、原理性的技術“乾貨”,那么本書就是為你量身打造的。
如果讀者還是徘徊在“Hello Word”左右的菜鳥,請慎選。但如果你擁有堅持實踐加思考的堅強毅力,能經受住本書的考驗,那么你也肯定會變成一隻“大鵬”。