레스토랑에 있다고 가정
점원은 손님에게 메뉴를 알려주고, 주방에 주문받은 요리를 요청하고 주방에서 완성된 요리를 손님에게 전달 -> API와 같은 역할
API는 손님(프로그램
)이 주문할 수 있게 메뉴(명령 목록
)를 정리하고, 주문(명령
)을 받으면 요리사(응용프로그램
)와 상호작용하여 요청된 메뉴(명령에 대한 값
)를 전달합니다.
즉 API는 프로그램들이 서로 상호작용하는 것을 도와주는 매개체
로 볼 수 있습니다.
출처: https://dydrlaks.medium.com/api-란-c0fd6222d34c
응용 프로그램
에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
를 뜻함
일기 정보를 자신의 웹사이트에 띄울려 하는 경우
지도를 이용한 웹서비스(ex: 길찾기, 맛집찾기)를 제작하고자 할때
보통 일반 사람들에게는 위의 기능들을 제공할만한 기반이 되는 데이터
도 없고 관련 프로그램
도 없음
API란 응용 프로그램
에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능
을 제어할 수 있게 만든 인터페이스를 뜻한다.
운영체제나 프로그래밍 언어가 제공하는 기능
을 SK의 날씨정보, Daum의 지도정보, 카카오페이로 두고 응용 프로그램
을 우리가 만든 서비스라고 생각
예를들어 Daum이 지도 데이터를 공개해도 대부분의 사람들은 그 데이터를 가지고 자신에게 유용하게 사용하기가 어려울 것-> 호환성의 문제라던가 너무나 정보가 방대해서 다루기 어렵다든가 등이 그 이유
Daum에선 자사 데이터를 활용하여 사용할 수 있게끔 ‘다음지도API’라는 일종의 ‘홈버튼’을 사용자들에게 공개한 것
부동산 중개 모바일 어플리케이션 “직방”도 국가공공 API를 토대로 만들어진 서비스
API란 간단하게 이해하면 “내가 만든 프로그램이 개인 개발자, 기업, 기관이 제공하는 기능, 프로그램 등을 활용할 수 있게끔 도와주는 중간 매개체”