RESTful한 API를 말한다.
굉장히 당연한 말이지만 말 그대로이다!
그렇다면 각 단어의 뜻을 살펴본다면 RESTful API가 뭐하는 친구인지 알 수 있을 것이다.
Application Programming Interface의 약자.
정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘.
이렇게 정의하고 있다. 내 방식대로 이해해보자면 소프트웨어의 구성 요소들끼리도 오브젝트 따위를 다루는 방식이 다 다르기 때문에 이 괴리를 처리하기 위해 규약을 정하여 서로 통신, 상호작용할 수 있도록 한 것을 말한다고 보면 될 것이다.
Representational State Transfer의 약자.
World Wide Web 등의 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처 중 하나.
REST는 처음에 인터넷과 같은 복잡한 네트워크에서 통신을 관리하기 위한 지침으로 만들어졌고 대규모 통신에서 안정적인 지원이 가능하다고 하며 구현 및 수정도 용이하다.
균일한 인터페이스 (Uniform Interface)
무상태 (Stateless)
계층화 시스템 (Layered System)
캐시 가능성 (Cacheable)
온 디맨드 코드 (On Demand Code)
확장성
유연성
독립성
RESTful API란?
REST 아키텍처를 사용한 애플리케이션 프로그래밍 인터페이스를 말하는 것으로 REST 아키텍처의 원칙을 준수한 프로그램 간의 상호 작용을 정리한 규약이다.
그래서 어떤 이점이 있는데?
해당 API를 사용하게 될 경우 확장성, 유연성, 독립성에서 이득이 있다고 할 수 있다!