- ä½è : Leonard Richardson,Sam Ruby,å±±æ¬é½å¹³,æ ªå¼ä¼ç¤¾ã¯ã¤ã¼ã
- åºç社/ã¡ã¼ã«ã¼: ãªã©ã¤ãªã¼ã»ã¸ã£ãã³
- çºå£²æ¥: 2007/12/21
- ã¡ãã£ã¢: åè¡æ¬
- è³¼å ¥: 25人 ã¯ãªãã¯: 842å
- ãã®ååãå«ãããã° (168件) ãè¦ã
ãã®æ¬ã®ç£è¨³ããããyoheiããããç®æ¬ãã¦ããã ãã¾ããããããã¨ããããã¾ãã
å®ã¯ã¾ã é¦è¨³çãèªã¿çµãã¦ã¯ããªãã®ã§ãããåæ¸ã¯çµæ§èªãã ã¤ããã§ããç®æ¬ãã¦ããã ããã礼ãå
¼ãã¦ããã®æ¬ã®ç´¹ä»ãããã¦ããã ãã¾ãã
ãã®æ¬ã®æ義
ç§ã¯ãã®æ¬ã®æ義ã¯ä»¥ä¸ã®ç¹ã ã¨èãã¦ãã¾ãã
- Webä¸ã«æ£å¨ãã¦ããRESTã«é¢ããæ å ±ããæ¬ã¨ãã¦ä¸ã¤ã®å½¢ã«ã¾ã¨ãããã¨
- RESTfulãªã·ã¹ãã ã®ãè¨è¨æ¹æ³ãã«ã¤ãã¦æ£é¢ããè°è«ããã¦ãããã¨
- è¨è¨æ¹æ³ã ãã§ãªããå®è£ æ¹æ³ãå®è£ æã®ãã¬ã¼ããªãã«ãè¸ã¿è¾¼ãã§ãããã¨
- ä¸è¨ã®ç¹ããæ¥æ¬èªã¨ãã¦èªãããã¨
- 以ä¸ã®ç¹ãåããæ¬ãããµããããã²ã¨ãç£è¨³ãããã¨
ãã®æ¬ã®èªã¿ã©ããã«ã¤ãã¦æã詳ããã¯ãç£è¨³è
ã§ããyoheiããã®RESTful Web ãµã¼ãã¹ã®èªã¿ã©ããããç¶ãã·ãªã¼ãºãèªãã®ãããã®ã§ã¯ãªãã§ããããããã®æ¬ãä¸çªèªã¿è¾¼ã¿ã訳ãããæ¹ã®è¦ç¹ããç´¹ä»ããã¦ãã¾ãã
ã§ã¯æ¬ã¨ã³ããªã§ã¯ä½ãæ¸ããã¨ããã¨ãã²ã¨ãã®èªã¿æã¨ãã¦ã®ç§ãèããèªã¿ã©ãããæ¸ããã¨ã«ãã¾ãã
èªã¿ã©ãã
ãã®æ¬ã®èªã¿ã©ããã¯ãRESTfulãªã·ã¹ãã ã®åçååã¨è¨è¨æ¹æ³ã«ã¤ãã¦è¨ããã¦ããé¨åã§ããRESTfulãªã·ã¹ãã ã«ã¨ã£ã¦ã¯ç¹ã«è¨è¨ãéè¦ã§ãããRESTfulãªã·ã¹ãã ãªãã§ã¯ã®èæ ®ç¹ããããã¨ãããã¨ã説æããã¦ãã¾ãã
ãã®æ¬ã¯450ãã¼ã¸å¼±ããã¾ãããRESTã«èå³ããã人ã¯ãã¡ããæåããæå¾ã¾ã§èªãã¹ãã¨èãã¾ããããããã£ãã¡ãªäºº(å«ãç§)ã«åãã¦ããã¨ã«ããããã ãã¯èªãã¹ããã¨ããé¨åãæãã¾ãããã
ãªã«ã¯ãªãã¨ã第4ç«
ããã¯ãã4ç« ããªã½ã¼ã¹æåã¢ã¼ããã¯ãã£ï¼ROAï¼ãã§ãããã®ç« ã ãã¯æä½éç®ãéãã¹ãã ã¨èãã¾ããããã¦ãã®ç« ãèªãã¨ãçµå±ä»ã®ç« ãèªã¿ãããªãã®ã§ã¯ãªãã§ããããã
ä¸ç¤ã¯å¿ èª
ç§ã¯æä½é4ç« ãã¾ãèªãã§ROA(Resource Oriented Architecture)ãç解ããã5ç« ãèªã¿åãå°ç¨ã®ãªã½ã¼ã¹æåãµã¼ãã¹ã®è¨è¨ãã¨ã6ç« ãèªã¿åã/æ¸ãè¾¼ã¿å¯è½ãªãªã½ã¼ã¹æåãµã¼ãã¹ã®è¨è¨ãã§ROAã®è¨è¨ãå¦ã¶ãã¨ãéè¦ã ã¨èãã¾ãããã®ä¸ç¤ã®ä¸ã¤ã®ç« ã¯ã¨ã«ããç´ æ´ãããã
ããã¦ã(ã§ããã°)Railsã«ããå®è£ ã®ç¬¬7ç« ãèªãã§è¨è¨ã¨å®è£ ã®ãã¬ã¼ããªããå¦ã³ã次ã®ã8ç« ãRESTã¨ROAã®ãã¹ããã©ã¯ãã£ã¹ãã§ããã«æ·±ãè¨è¨ã¨å®è£ ã®èæ ®ç¹ãèªããã¨ããæµããè¯ãã®ã§ã¯ãªãã§ããããã
第8ç« ã¯è¨è¨ãè¡ãã¨ãã«ã¶ã¤ããçåç¹ãæºè¼ããã¦ãã¦ãèªã¿å¿ããããã¾ãã第8ç« ã«ã¯ä¾ãã°ãROAã®åçååã¯ãªã大äºãªã®ãããããªã½ã¼ã¹ã®ä¸æ¬æ´æ°ããããã¨ãã¯ã©ãè¨è¨ããã¹ã?ãããã¯ã¼ã«ãªURIã¨ã¯ä½ããURIè¨è¨ã¯ã©ãããã¹ã?ããªã©ãæ¸ããã¦ãã¾ãã
ã¨ãããã¨ã§ã¾ã¨ããã¨ã
- 4ç« ããªã½ã¼ã¹æåã¢ã¼ããã¯ãã£ï¼ROAï¼
- 5ç« ãèªã¿åãå°ç¨ã®ãªã½ã¼ã¹æåãµã¼ãã¹ã®è¨è¨
- 6ç« ãèªã¿åã/æ¸ãè¾¼ã¿å¯è½ãªãªã½ã¼ã¹æåãµã¼ãã¹ã®è¨è¨
- 8ç« ãRESTã¨ROAã®ãã¹ããã©ã¯ãã£ã¹
ã¯å¿ èªã§ãããã¨ãããã¨ã§ãã
(追è¨) 誤解ã®ç¡ãããã«æ¸ãã¦ããã¾ãããæåã®ä¸ç« ãé£ã°ãã¦èªããã¨ãå§ãã¦ããã®ã§ã¯ããã¾ãããæåã®ä¸ç« ãããã¡ããéè¦ã§ãé¢ç½ãã§ãããã®å¾ã®è°è«ã®åæã¨ãªãç« ã§ãã®ã§ãèªãã§ã¿ã¦ãã ããã
ãªãã¡ã¬ã³ã¹çãªå´é¢ãåãã¦ããæ¬
ããã¦ãå®éã«RESTfulãªã·ã¹ãã ã®è¨è¨ã¨å®è£ ãè¡ã段éã«ãªãã¨ãå¿ ç¶çã«ä»¥ä¸ã®ç« ãé »ç¹ã«èªããã¨ã«ãªãã¾ãããããã®ç« ã¯ãªãã¡ã¬ã³ã¹çãªå´é¢ãæã£ã¦ãã¦ãè¨è¨ã¨å®è£ ãè¡ãéã«æè¡ã®é¸æãç´°é¨ã«è¿·ã£ãã¨ãã«éããã¨ã«ãªãã¾ãã
- 9ç« ããµã¼ãã¹ã®åºæ¬è¦ç´
- ä»é²Bãæããã使ç¨ããã42ã®HTTPã¬ã¹ãã³ã¹ã³ã¼ã
- ä»é²Cãæããã使ç¨ãããHTTPãããã¼
9ç« ã¯RESTfulãªã·ã¹ãã ãæ§æããæè¡è¦ç´ ã®ç´¹ä»ã¨æ¯è¼ãè¡ã£ã¦ãã¾ãããã¨ãã°è¡¨ç¾(Representation)ã«ã¤ããæè¡(ãã¬ã¼ã³ããã¹ããAtomãXMLãXHTMLãJSONãªã©)ã®æ¯è¼ãAtomPubã®èª¬æãããã¦URITemplateãWADLã®ç´¹ä»ãªã©ããããªã£ã¦ãã¾ãã
ä»é²Bã¨ä»é²Cã¯ç« ã¿ã¤ãã«ã§è¨ãããããªã§ãããå®è£
ããã¨ãã«ã¯é »ç¹ã«èªããã¨ã«ãªãã¾ããéè¦åº¦ã§ã©ã³ã¯ä»ãããã¦ããã®ãããããããã§ãã
ã¾ã¨ã
é·ããªã£ã¦ãã¾ãã¾ãããè¦ããã«ãã®ã¨ã³ããªã§è¨ãããã£ããã¨ã¯ããé常ã«é¢ç½ãæ¬ãªã®ã§è²·ã£ã¦æã¯ãªããã¨ãããã¨ã§ããä»å¹´èªãã æ¬ã®ä¸ã§ãç¹ã«é¢ç½ãã£ãä¸åã§ãã®ã§ãããããã§ãã