API

2022. 3. 17. 18:40BACK END

API란?

API(Application Programming Interface 애플리케이션 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스를 제공한다.

 

 

비유를 들어 쉽게 설명하자면 식당에서 손님이 점원을 통해 음식을 주문하고 받는 과정과 비슷하다. 위 상황에서 손님은 메뉴에 있는 음식을 요청하는 응용프로그램이라면 요리사는 요리를 만들어 전달하는 운영체제라고 할 수 있다. 그리고 이 둘을 연결해주는 점원이 바로 API라고 볼 수 있다. 여기서 점원의 역할은 손님에게 메뉴를 알려주고, 요리사에게 주문받은 요리를 요청한다. 요리사가 주문대로 완성된 요리를 내놓으면 점원은 그 요리를 손님에게 다시 전달하는 과정으로 식당의 서비스가 이루어진다.

 

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

 

API의 유형

1. private API
private API는 내부 API로, 회사 개발자가 자체 제품과 서비스를 개선하기 위해 내부적으로 발행합니다. 따라서 제 3자에게 노출되지 않는다.

 

2. public API
public API는 개방형 API로, 모두에게 공개됩니다. 누구나 제한 없이 API를 사용할 수 있는 게 특징이다.

 

3. partner API

partner API는 기업이 데이터 공유에 동의하는 특정인들만 사용할 수 있다. 비즈니스 관계에서 사용되는 편이며, 종종 파트너 회사 간에 소프트웨어를 통합하기 위해 사용된다.

 

API 사용하면 뭐가 좋을까?

 

날씨 정보를 나타내는 어플리케이션을 구현한다고 가정했을 때 시간별, 지역별 데이터를 하나씩 확인하여 응답해줄 필요가 없다. 기상청에서 제공하는 API를 활용하여 날짜/지역정보를 전달하기만 하면 해당하는 날씨 정보를 받을 수 있기 때문이다.

 

이처럼 API를 사용하면 구현 방식을 알지 못해도 제품 또는 서비스가 서로 커뮤니케이션할 수 있으며 애플리케이션 개발을 간소화하여 시간과 비용을 절약할 수 있다. 새로운 툴과 제품을 설계하거나 기존 툴과 제품을 관리하는 경우 API는 유연성을 제공하고 설계, 관리, 사용 방법을 간소화하며 혁신의 기회를 제공한다. 마치 손님이 주문하는 요리의 재료와 성분, 조리법 등을 알고 있지 않지만 완성된 요리를 제공받을 수 있는 것과 비슷하다.

 

또한 API를 사용하면 많은 이점이 있다. Private API를 이용할 경우, 개발자들이 애플리케이션 코드를 작성하는 방법을 표준화함으로써, 간소화되고 빠른 프로세스 처리를 가능하게 한다. 또한, 소프트 웨어를 통합하고자 할 때는 개발자들 간의 협업을 용이하게 만들어줄 수 있다.
public API와 partner API 를 사용하면, 기업은 타사 데이터를 활용하여 브랜드 인지도를 높일 수 있다. 뿐만 아니라 고객 데이터베이스를 확장하여 전환율까지 높일 수 있다.

 

 

 

API의 역할 요약

 

1. API는 서버와 데이터베이스에 대한 출입구 역할을 한다.
API는 목적에 맞지 않는 사용자가 데이터베이스에 접근하는 것을 방지하기 위해 서버와 데이터베이스에 대한 출입구 역할을 하며, 허용된 사람들에게만 접근성을 부여해준다.

 

2. API는 애플리케이션과 기기가 원활하게 통신할 수 있도록 한다.
API는 애플리케이션과 기기가 데이터를 원활히 주고받을 수 있도록 돕는 역할을 한다.

 

3. API는 모든 접속을 표준화한다.

API는 모든 접속을 표준화하기 때문에 기계/ 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있다. 쉽게 말해, API는 범용 플러그처럼 작동한다고 볼 수 있다.

 

'BACK END' 카테고리의 다른 글

장부장님을 위한 API상호작용 흐름 정리  (0) 2022.03.17