API란?

Kay·2022년 7월 15일
0

흥미로운 주제들

목록 보기
5/7
post-thumbnail

오늘의 글: API

API

출처: Red Hat API (Application Programming Interface) 는 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능을 할 수 있게 만든 인터페이스를 뜻한다. 특정 사이트에서 특정 데이터를 공유할 경우 어떤 방식으로 요청해야 하는지, 어떠한 데이터를 제공 받을 수 있을지에 대한 규격들을 의미한다. 사용 방법과 용도에 따라 분류하면 개방형(open API)과 폐쇄형(closed API) 가 있다. 기상청의 open API 를 보면 낙뢰정보, 태풍정보, 동네예보통보문 등의 다양한 정보를 제공하고 있다. 이 때 정보의 포맷은 XML, Json 이다. 이런 식으로 지신이 가지고 있는 정보를 제공하기 위해 어떤 방식으로 통신할 것인지에 대한 규격을 API 라 한다.

REST API

REST (REpresentational State Transfer)란 웹에 존재하는 모든 자원 (이미지, 동영상, DB)에 고유한 URL 을 부여해 활용하는 것으로 자원을 정의하고 자원에 대한 주소를 지정하는 방법론을 의미한다.
REST 개념은 애플리케이션 분리 및 통합, 다양한 클라이언트의 등장등으로 대두되었다. 애플리케이션의 복잡도가 증가하면서 애플리케이션을 어떻게 분리하고 통합하는 지가 주요 이슈가 되었고, 모바일과 같은 다양한 클라이언트가 등장하면서 Backend 하나로 다양한 Device 를 대응하기 위해 REST 의 필요성이 증대되었다.
RESTful API 는 이러한 REST 의 특징을 지킨 API 를 의미한다.

용어

인터페이스: 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호르 주고 받는 경우의 접점이나 경계면. 즉, 사용자가 기기를 쉽게 동작시키는데 도움을 주는 시스템
XML (eXtensible MArkup Language): W2C에서 개발한 마크업 언어
Json (Javascript Object Notation): 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식
마크업 언어: 태그등을 이용해 문서나 데이터의 구조를 명기하는 언어 (HTML, XML 등)
HTTP (HyperText Transfer Protocol): HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜
URL (Uniform Resource Locator): 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약

왜 골랐나?

업무 중 API 문서를 자주 접한다.
API에 대해 정리를 하면 좋겠다는 생각이 들었다.

그래서?

API 하면 플랫폼이 먼저 떠오른다. 많은 기업에서 API 를 제공한다.
처음 open API 를 접할 때는 했던 왜 open 이지? 라는 생각은 오래가지 못했다.
API 를 제공하는 쪽, 제공받는 쪽 모두 얻는 게 있다.
하지만 이왕이면 제공하는 쪽이고 싶다.

참고한 글

> [IT용어] API란 무엇인가?
> 기획자로서 필요한 OPEN API 개념 이해하기
> Red Hat-API란?
> RESTful API란?

profile
궁금한 것이 많은 개발자 Kay 입니다.

0개의 댓글