본문 바로가기
기타

TIL - 22.02.23

by DGK 2022. 2. 23.

 

개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.

 

2월 23일(수)

 

API


API란?

 

API를 비유적으로 설명하면 다음과 같다.

 

레스토랑에서 주문을 하는 과정을 생각해보면, 점원이 가져다준 메뉴판을 보면서 음식을 고르고 점원은 주문을 받아 요리사에게 해당 음식을 요청한다. 그러면 요리사는 음식을 만들어서 다시 점원에게 가져다주고 마지막으로 점원이 손님에게 음식을 서빙하면 주문이 완료된다.

 

여기서 점원의 역할이 API의 역할과 동일하다.

점원(API)는 손님(프로그램)이 주문할 수 있게 메뉴(명령목록)를 정리하고, 주문(명령)을 받으면 요리사(응용프로그램)과 상호작용하여 요청된 메뉴(명령에 대한 값)을 전달한다. 즉, API는 프로그램들이 서로 상호작용하는 것을 도와주는 매개체라고 할 수 있다.

 

 

API의 역할은?

 

  1. API는 서버와 데이터베이스에 대한 출입구 역할을 한다.
  2. 데이터베이스에는 중요한 정보들이 저장되기 때문에, API가 서버와 데이터베이스의 출입구 역할을 함으로써 일부 허용된 사람들에게만 데이터베이스 접근성을 부여해준다.
  3. 또한, API는 애플리케이션이 서로 원활하게 (데이터) 통신을 할 수 있도록 도와주며 모든 접속을 표준화 시켜준다.
  4. API가 모든 접속을 표준화하기 때문에 기계, 운영체제 등에 상관없이 누구나 동일한 액세스를 얻을 수 있다.

 

 

API의 유형은?

 

  1. private API는 내부 API로 회사 개발자가 자체 제품과 서비스를 개선하기 위해 내부적으로 발행한 API이다. (제 3자에게 노출X)
  2. public API는 개방형 API로 모두에게 공개되며 제한 없이 사용할 수 있는 API이다.
  3. partner API는 기업이 데이터 공유에 동의하는 특정인들에게만 사용할 수 있도록 만든 API이다. 비즈니스 관계에서 사용되는 편이며 종종 파트너 회사 간에 소프트웨어를 통합하기 위해 사용된다.

API 예시

 

 

참고내용

 

  • endpoint

엔드포인트는 커뮤니케이션 채널의 한쪽 끝을 의미한다.

즉, 서비스를 이용할 때 사용하는 커뮤니케이션 채널의 한쪽 끝에 해당하는 URI를 말한다.

 

endpoint를 API와 비교하여 생각해보면,

결국 API가 두 시스템(어플리케이션)이 상호작용(소통)할 수 있게 만들어주는 프로토콜의 총 집합(매개체)라면,

endpoint는 API가 서버에서 리소스(자원)에 접근할 수 있도록 가능하게 하는 URI(URL)이라 할 수 있다.

 

[엔드포인트 예시]

지하철 최단거리 경로를 제공하는 웹 서비스가 있다고 가정하자.

이 서비스를 이용하는 사용자는 출발역과 도착역을 설정하고 최단 경로를 찾는 버튼을 누른다.

이 때, 최단 거리 경로를 구하는 서비스를 이용하기 위해 해당 요청이 향하는 URI가 바로 엔드포인트(endpoint)이다.

 

 

'기타' 카테고리의 다른 글

TIL - 22.02.24  (0) 2022.02.24
TIL - 22.02.22  (0) 2022.02.22
TIL - 22.02.21  (0) 2022.02.21
TIL - 22.02.18  (0) 2022.02.18
TIL - 22.02.17  (0) 2022.02.17

댓글