[TIL] api와 REST api

김민성·2021년 2월 6일
0

[2021/02/06]
한창 웹개발 공부를 하고 있어서 그런지 대학교 근로까지 와서 문득 api가 뭔가 싶어서 근로 시간 동안 휴대폰으로 검색해봤습니다. 그런데 생각이 정리가 안되서 글로 남겨야겠다고 마음먹었습니다.

api : application programming interface 의 약자로 클라이언트의 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스. 간단하게 말하면 시스템과 시스템간의 상호작용 이라고 합니다.

저는 이렇게 어려운 언어(?)로 정의된 문장을 보면 단번에 이해하기가 정말 어려워서 예시를 찾아야 합니다. 그래서 제가 생각해본 예시로는 js에서 alert가 api인 것 같습니다. js에서 alert를 사용함으로써 브라우저에 알림창을 띄워주니까 js와 브라우저간에 상호작용이라고 생각했습니다. 그리고 비슷한 예로 Math 함수, reduce 같은 것들 역시 api인 것 같습니다.

api를 검색하면 연관 검색어로 REST api가 나옵니다. 그래서 REST api도 검색해보았습니다.

REST 는 REpresentational State Transfer의 약자로 분산 시스템 설계를 위한 아키텍쳐 스타일이라고 합니다! 아키텍처 스타일은 무엇인가.. 제약조건들의 집합이라고 합니다. REST를 사용하는 이유는 다른 모듈 또는 애플리케이션들이라도 RESTful api를 통해 상호통신이 된다고 합니다. RESTful api는 REST 아키텍쳐의 원칙을 만족하는 api라는 뜻입니다.

여기까지 정리해보면 REST api는 REST만의 제약조건들이 있는데 해당조건들을 만족하는 api들이라는 말이 됩니다. 그리고 분산된 시스템들을 대응하기 위해 제공된 다양한 REST api를 조합하여 만든 것이 mashup이라고 합니다.

REST의 제약조건들이 상당히 많은데 아직 REST도 이해가 잘 되지 않아서 조금 더 찾아봐야할 것 같습니다.ㅠㅠ

profile
https://github.com/alstjd8826

0개의 댓글