我想要深入學習REST開發,有哪些中文版的圖書資料?

李錕發表於2012-01-24

答:2007年1月Ruby on Rails 1.2版正式釋出。其作者DHH宣佈從1.2版開始,將支援REST開發作為Rails的一個核心設計目標。對於REST開發來說,這個事件具有里程碑式的意義。從此REST開發進入了Web開發舞臺的中央位置,迅速普及開來。支援REST開發的Web開發框架層出不窮,並且出版了很多這方面的圖書。目前已經出版的REST開發圖書中,質量最高的是O'Reilly公司出版的一系列圖書。其中最棒的三本書已經有中文版上市了,它們是: a. 《RESTful Web Services中文版》 b. 《RESTful Web Services Cookbook中文版》 c. 《REST實戰》(《REST in Practice》中文版)

這三本書分別面向不同的使用者群: a. 《RESTful Web Services中文版》是第一本REST開發圖書,詳細介紹了面向資源架構的設計方法和步驟。其中的例子主要使用Ruby程式語言,適用於使用Ruby的開發者。使用其他程式語言的開發者也可以將其作為一本REST開發的入門書來閱讀,因為其中介紹的設計方法和步驟對於任何程式語言來說都是通用的。 b. 《RESTful Web Services Cookbook中文版》中的內容是在REST開發過程中會遇到的一些具體問題的解決方案。其中的例子全部使用HTTP訊息(請求/響應)來表達,適用於使用任何程式語言的一線開發者。這本書可以作為解決具體問題時查閱的工具書,不需要一次性全部讀完,也不需要嚴格按照順序來閱讀。 c. 《REST實戰》是至今為止REST開發方面最全面、最深入的著作(沒有之一),詳細地介紹了超媒體服務(即“超文字驅動”)、快取、安全性等等其他REST開發圖書中完全沒有涉及或者語焉不詳的內容,並且詳細討論了REST和傳統的Web Services、語義網等技術之間的關係。這本書適用於希望掌握REST開發的全貌,用來做架構選型的分散式應用架構師。其中的例子使用Java和C#程式語言,適用於使用Java/.NET兩大平臺的開發者。

按照學習新知識的正常過程What-Way-How的順序,我推薦初學者首先閱讀《REST實戰》,先從較高的架構層面理解REST究竟是什麼、為何要採用REST這種架構風格/REST能帶來哪些好處、如何設計系統的架構才能符合REST的要求。這本書讀完後,讀者對於REST開發已經打下了堅實的知識基礎,然後再去閱讀《RESTful Web Services Cookbook中文版》,確定一些具體問題的解決方案。在學習的過程中,《RESTful Web Services中文版》可以作為非常有益的補充閱讀材料。 另外,在學習的過程中,建議最好再去閱讀一下Roy Fielding推匯出REST架構風格的那篇著名的博士論文,其中文版名為《架構風格與基於網路的軟體架構設計》,可以在網上搜尋到。 同時,仔細閱讀一下HTTP 1.1協議(RFC2616)也是很有必要的。作為分散式應用的架構師,不理解HTTP協議,會帶來嚴重的問題。REST正是設計HTTP 1.1協議背後的指導原理,而設計HTTP 1.1協議的目的正是為了實現符合REST架構風格要求的分散式應用架構。只有真正理解了REST,才有可能以最高效的方式使用HTTP協議。關於HTTP協議本身,O'Reilly公司出版的《HTTP權威指南》(《HTTP: The Definitive Guide》)即將於今年3月出版,建議將這本書與RFC2616結合在一起閱讀。

相關文章