[MVC 프레임워크 2단계 구현 실습 문서](8.3 MVC 프레임워크 2단계 구현 실습.pdf)
웹 백엔드는 일반 웹 애플리케이션 뿐만 아니라 모바일 앱의 백엔드로도 활용되고 있다. 한발 더 나아가 게임의 백엔드로도 활용되고 있는 실정이다. 이와 같이 웹 백엔드가 활용되는 곳이 많아지면서 HTML과 JSON/XML API를 동시에 지원하는 것은 중복 코드도 많고, 유지보수하기도 힘들어진다. 이 같은 단점을 극복하기 위해 최근 웹 백엔드는 모든 기능을 JSON/XML API만 지원하고 UI에 대한 결정은 이 API를 사용하는 클라이언트에서 결정하는 방향으로 발전하고 있다.
이와 같이 웹 백엔드 API를 설계할 때 사용하는 구조로 REST API 스타일이 널리 사용되고 있다. REST API에 대해 한 문장으로 정의하기 힘든데 REST API 스타일로 구현된 예제를 통해 REST API 스타일 무엇이다라는 것에 대한 감(sense)을 잡았으면 한다.
REST API 스타일을 학습하는 방법은 책이나 문서를 통해 학습하는 방법도 있지만 그 보다는 이미 REST API 스타일로 구현되어 있는 공개 API를 보면서 학습하는 것이 빠르고 쉬울 수 있다. Github, 페이스북, 구글과 같은 서비스의 공개 API를 읽으면 자연스럽게 REST API 스타일을 익힐 수 있다.
REST API 관련해 문서를 참고하고 싶다면 먼저 https://pages.apigee.com/rs/apigee/images/api-design-ebook-2012-03.pdf 문서를 참고한다. 영어로 되어 있지만 페이지 수도 많지 않고, 샘플 예제를 통해 REST API 스타일에 대해 알 수 있기 때문에 영어를 잘 하지 못해도 이해하는데 크게 부담되지 않는다.
만약 영어로 된 문서가 읽기 부담스럽다면 일관성 있는 웹 서비스 인터페이스 설계를 위한 REST API 디자인 규칙(마크 메세 저/권원상,김관래 역, 한빛미디어/2015년) 책을 통해 학습하는 것도 한 가지 방법이다.
REST API 스타일로 개발하는 것은 정답이 있는 영역이 아닌 설계의 영역이기 때문에 경험을 통해 지속적으로 좋은 스타일을 찾아가야한다.