本文記錄了本人在學習提出REST風格論文的學習曆程,基本是從完全不知道REST是什麼到有一點明晰的概念。希望能夠分享給大家,為大家的學習起到一定的促進作用。
衆所周知REST的概念正式起源于Roy Thomas Fielding這位大神的博士論文,這裡提供了中英文版的下載下傳連結,感興趣的朋友們可以進行拜讀,建議英文大神直接看英文原版,中文讀起來太拗口,容易打瞌睡。
- 英文版:http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm(可線上檢視,也可下載下傳閱讀)
- 中文版:https://wenku.baidu.com/view/11ac046fa45177232f60a288.html(不要下載下傳券)
論文内容簡單解讀
由于本人英文水準堪憂,是以隻能參考中文版進行學習,下面闡述了本人對學習過程的總結及了解。
第一章:軟體架構、風格相關概念的來源及介紹,主要是集中于學術層面的讨論明确,不用看得太清楚。重要的一點是明白一個概念就可以了:一種架構風格是一組已命名的、協作的架構限制。架構風格并不是強制開發者必須遵循的約定,是為了得到一些軟體特性而自行采用的約定。
第二章:讨論并明确了基于網絡應用架構(基于網絡的超媒體系統的網絡)的特性需求,總結包括以下幾點,具體每一點所考量的具體意義,可在論文相關章節進行明确:
- 網絡性能
- 使用者可覺察性能
- 效率
- 可伸縮性
- 簡單性
- 可進化性
- 可擴充性
- 可定制性
- 可配置性
- 可重用性
- 可見性
- 可移植性
- 可靠性
第三章:分析現有各常用架構針對分布式超媒體系統(基于網絡的超媒體系統的超媒體)的适用性,這一章大家可以着重看以下,對了解架構風格、拓寬架構知識都能起到一定作用。最後在小結中總結了一張大的對比表格,基本就能看出REST的雛形了。
第四章:分析Web應用的關鍵屬性需求,論文中很多地方多說論文的讨論是針對基于網絡的超媒體系統而言,可能這裡了解起來有點暈,退一點來說,現在我們最常見最常用的Web系統就是其中的一種。
第五章:推導及明确REST架構風格,根據需求從無到有一步步将REST風格内容進行豐富明确,大家也十分有必要将此章節詳細的讀一遍。
第六章:總結了幾種在現代Web架構中的不比對情況,并且對它們為何會出現和它們如何偏離REST 進行了分析,這一章可讀可不讀吧,本人當時讀起來真是不知所雲,最後隻得是大略看了一遍就略過了,因為對REST的了解,基本到第五章就比較清楚了,剩下進一步的拓展明确,就看了些大牛部落客的部落格。
總結
整篇論文可以說就是論證了為什麼REST風格是最适合基于網絡的超媒體系統開發的風格,而REST風格,是多項由現存已有架構限制根據特定特性需求組合而來的一組限制。
表述性狀态轉移(Representational State Transfer,REST)的架構風格REST 強調元件互動的可伸縮性、接口的通用性、元件的獨立部署、以及用來減少互動延遲、增強安全性、封裝遺留系統的中間元件(intermediary components)。其作用是用來指導Web的設計、定義和部署。
==================================
==疑問?幫助?批評?歡迎評論 | QQ:593159978==
==================================