아키텍처와 아키텍처 스타일은 다르다. 이것은 마치 디자인(설계)과 디자인 패턴이 다른것과 같다. 아키텍처 스타일이란, 여러 아키텍처들의 공통된 속성을 모아서 하나로 구성한 것이다.
REST 는 아키텍처 스타일로서의 역할을 한다. 일반적으로 사용되는 서버/클라이언트 아키텍처에 여러가지 제약을 추가한다.
리소스는 정보를 말한다. 리소스를 활용하기 위해서는 특정 리소스에 접근하기 위한 방법이 필요하다. 웹에서는 이름을 활용한다. 고유한 식별성을 가진 이름을 통해서 특정 리소스에 접근하는 방법을 취하고 있다. 웹에서의 이름들을 URI 라고 부른다. 하이퍼미디어에서는 여러개의 리소스가 링크를 통해서 연결되는데, 이때 활용되는 것이 URI 다.
리소스의 표현은 PDF 파일, 텍스트 파일, 동영상, 음악 등 다양한 형태가 될 수 있다. 동일한 URI 를 따라가도 상태 에 따라서 다른 리소스를 얻을 수 있다.
REST 의 제약 중 하나로, 프로그램 코드를 서버에서 다운받아 클라이언트에서 사용하는 방식을 뜻한다. 이 방식을 사용하는 경우, HTTP 통신의 가시성이 떨어진다는 단점이 있다. HTTP 프로토콜을 이용하면, 특정한 리소스를 획득하기 위해 적절한 메소드와 URI 를 취득하는식인데, 코드 온 디맨드를 활용하면, 어떤 정보를 어떻게 요구하는지가 명확히 드러나지 않기 때문이다.
REST 의 대표적인 제약조건으로 몇가지 메서드와 URI 만을 통해서 동작하는 것을 말한다. RPC, COBRA 등의 객체 형 시스템과 가장 크게 구분되는 것으로, 업데이트시에도 일관성이 유지된다는 장점이 있고, 입도가 크면서도 단순함을 추구할 수 있다는 장점도 있다.
상태를 서버에 저장하지 않는 것이 스테이트리스 서버 제약 조건이다.
하이퍼 미디어 어플리케이션에서는 미디어가 하이퍼링크로 연결되어 있다. 하이퍼 링크 어플리케이션에서는 특히, 이러한 이동을 통해서 어플리케이션의 상태가 바뀌게 된다. 예를 들어, 로그인 링크를 누르고 로그인 하면, 사용자의 상태가 바뀌는 식이다.
위처럼 하이퍼미디어 어플리케이션의 동작은 특정한 링크를 통해서 실현된다. URI 를 활용하면, 해당 링크를 공유하기 쉬워지므로, 재사용이 가능한 기능을 만들 수 있다는 장점이 있다.