글
왜 REST 인가?
2008/소프트웨어 설계
2008/01/03 16:23
왜 REST(Representational State Transfer)인가 궁금했는데 Building Web Services the REST Way에 간결하고 명확한 설명이 있다.
위 내용을 기초로 개념 모델을 그려보면
모델을 한 눈에 와닿지 않는 것을 보면 아직 이해가 부족하다. 마소에서 읽은 창신님의 웹2.0 시대의 견인차 Open API에서 어떤 식으로 학습해야 할 지 배울 수 있다. Roy Fielding의 논문에서 다음 표를 보면 이해하는데 조금 도움이 된다.
논문에는 REST가 등장하는 기술적 배경에 대해서 요약한 상태도(statechart)가 등장한다.

좀 더 잘 정리한 글을 보시려면: Open Resource. Open Web이 꾸는 Plaza의 꿈
Why is it called Representational State Transfer?
The Web is comprised of resources. A resource is any item of interest. For example, the Boeing Aircraft Corp may define a 747 resource. Clients may access that resource with this URL: A representation of the resource is returned (e.g., Boeing747.html). The representation places the client application in a state. The result of the client traversing a hyperlink in Boeing747.html is another resource is accessed. The new representation places the client application into yet another state. Thus, the client application changes (transfers) state with each resource representation --> Representational State Transfer! Here is Roy Fielding's explanation of the meaning of Representational State Transfer: "Representational State Transfer is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use."위 내용을 기초로 개념 모델을 그려보면
모델을 한 눈에 와닿지 않는 것을 보면 아직 이해가 부족하다. 마소에서 읽은 창신님의 웹2.0 시대의 견인차 Open API에서 어떤 식으로 학습해야 할 지 배울 수 있다. Roy Fielding의 논문에서 다음 표를 보면 이해하는데 조금 도움이 된다.
| Data Element | Modern Web Examples |
|---|---|
| resource | the intended conceptual target of a hypertext reference |
| resource identifier | URL, URN |
| representation | HTML document, JPEG image |
| representation metadata | media type, last-modified time |
논문에는 REST가 등장하는 기술적 배경에 대해서 요약한 상태도(statechart)가 등장한다.

그림 한장이 여러가지 내용을 담고 있어서 설명은 생략한다. 논문을 이해한 사람이라면 쌈빡한(하지만, 그리 친절하지는 않은) 요약이라 볼 수 있다. 최초 상태1에서 아키텍처 제약(constraint)에 따라 설계 메커니즘(mechanism)을 도출하는 설명 방식(rationale)도 깔끔하다. 쌓이고 쌓여서.. 결국은 REST가 등장한다.
좀 더 잘 정리한 글을 보시려면: Open Resource. Open Web이 꾸는 Plaza의 꿈
- 아마 논문에서 말하는 Null style(WWW)로 볼 수 있을 것 같다. [본문으로]