註冊 | 登入 | RSS Feeds
ZDNet | Taiwan.CNET.com |

廣告:
REST 的口水正在洩洪

友善列印 | 轉寄朋友 | 加入HEMiDEMi網路書籤 | 加入funP | 加入Google書籤 | 加入Yahoo!奇摩分享書籤 | 留下回應
    
蕭百齡 2007/09/07 11:17:05 REST的內涵

如同 ATM 和上述 O’Reilly 《RESTful…》一書作者所強調的,REST 內含一個架構的精神,或許可稱之為 ROA,而它的設計哲學,不見得是物件導向已深化心中的人能在短時間內完全領略。OO 和 RPC 的設計方式往往透過 method 或 function 呼叫來達成一件事,而在 SOA 之下,某個業務功能可透過服務的 operation 來建模,落到技術層面,則可很輕易地對應成以一個方法或函數來實現。

例訂單查詢,可以透過一個幕後是 Java 方法的 Web service 來接受用戶請求,用戶端,也就是服務消費者,將訂單序號作為參數,放在請求裡面。在這種設計模式之下,主角是及物動詞,也就是對訂單(受詞)的查詢動作; 但如果要改用資源導向的觀念、也就是 REST 理念來設計的話,主角會是那千千萬萬筆的訂單,也就是名詞 - 每筆訂單都有一個獨特、專屬的 URI/URL 來識別, 據以對它們進行各別的查、增、刪、改。

ATM 也舉過一個例子,她說如果用 REST 來設計燈光控制的應用,那你的房子裡面的每一個燈泡都必須有一個獨特的 URI,然後對每盞燈發送開/關的控制信號;而不是透過一個統一的燈光總控來進行控制。看一個自然語言的例子,要表達類似的意念,我們可以說:「我不(太)同意你的看法」,但也可以說「我和你的看法不同」,前者以動詞為重心的表達方式,較為強烈而單刀直入,後者以名詞為主題的表達方式,讓人的感覺較為婉轉,REST 在設計上的體現,也有這種婉轉的味道。

至於 SOA 的未來,是否將如 Burton Group 所預測,逐漸將向 REST 傾斜,而帶來 SOAP 和 WS-* 的逐漸式微?我的看法:REST 的無限上崗,絕對不是 IT 大眾之福。不可諱言,REST 的確在某些領域非常有價值,尤其是在邊際 (edge) 端的應用,像AJAX、mashups 等一般被歸類在 Web 2.0 領域的應用,往往和用戶有比較強的互動。至於在server 對 server 的領域,像服務之間的自動化呼叫,需要服務能自動探索、自我描述的能力,REST 本身並無這種機制(也許以後會有,這是另一個我想稍後另篇探討的話題),另外像需要配合 policy 做比較複雜的安控,這些還是交給 SOAP 和 WS-* 比較合適。

對科技概念擴大解釋或模糊解釋是一種很可怕的現象。SOA 被過分炒作,變成凡事都符合 SOA,凡事都支援 SOA 的情形,猶歷歷在目。真的很不想看到 REST 又走上這條路。看得更憤世嫉俗點,我們甚至可以說,有心炒作新東西,對其擴大解釋,甚至不惜混淆視聽的,幕後一定別有用心。不是分析師想提高自我聲望,沽名釣譽,就是可以從支持新技術的產品或服務中獲利。至於那些看不清楚事情的本質,便隨著旁人在口水戰中起哄幫腔者,恐怕只是成了被有心人利用的炮灰。

本文轉載自作者部落格

蕭百齡筆名勞虎,曾任獨立技術諮詢顧問,專精XML、Java、資料庫、Perl 等Web 相關科技。勞虎涉獵IT技術已7年以上經驗,在W3C推廣XML技術的初期,其著作《無廢話XML》,是最早的華人XML技術書籍,廣受讀者歡迎。
| 第1頁 | REST的內涵 |
加入我的圖書館 訂閱關鍵字
加入網路書籤> 加入HEMiDEMi網路書籤 | 加入funP | 加入Google書籤 | 加入Yahoo!奇摩分享書籤 |
友善列印 | 轉寄朋友

icn_balloon_154x48 對本則報導有任何意見或看法嗎?歡迎留言


留下你的意見
會員 * 帳號:
* 密碼:
  1. 欄位可選填,若全不填,則顯示為「匿名」。
  2. 不支援html語法
非會員 姓名:
E-Mail:
Blog:
  重新載入驗證碼
* 驗證碼: 記住我




廣告

名家專欄

更多名家專欄
HP和Intel領導業界,提供卓著的效能及可用度
  + 效能卓越的刀鋒 
  + 按事業的優先目標,快速提供適切的資源 
  + 降低能源和冷卻成本 
廣告


Sponsored

活動快訊