API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스를 제공한다.
출처 : 위키백과
즉, API(Application Programming Interface)는 "프로그램과 프로그램을 연결시켜주는 매개체"다.
보통 프로그램끼리 통신을 하기 위해선 프로그램을 만드는 개발자가 해당 프로그램이 잘 통신할 수 있도록 규칙들을 잘 설계하는 게 중요하다.
API가 프로그램과 프로그램 사이의 중개자 역할을 해준다. 쉽게 말해서 규칙들의 집합이다. API가 대신해주는 프로그램의 기능들을 미리 정리해서 규칙을 잘 세워두면 클라이언트는 접근할 프로그램을 모르더라도 API에 따라 손쉽게 통신을 할 수 있게 된다.
API는 프로그램이 명령을 하면 그 명령을 정리하고, 응용프로그램과 상호작용하여 명령에 대한 값을 프로그램에 전달하는 역할을 한다.
■ API 역할
- API는 서버와 데이터베이스에 대한 출입구 역할을 한다
: 데이터베이스에는 중요한 정보들이 저장된다. 모든 사람들이 이 데이터베이스에 접근할 수 있으면 안되기 때문에 API는 이를 방지하기 위해 서버와 데이터베이스에 대한 출입구 역할을 하며, 허용된 사람들에게만 접근성을 부여해준다.
2. API는 애플리케이션과 기기가 원활하게 통신할 수 있도록 한다
: API는 애플리케이션과 기기가 데이터를 원활하게 주고받을 수 있도록 도와주는 역할을 한다.
3. 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 서버를 두고 클라이언트와 통신한다.
'프로그래밍 > IT지식' 카테고리의 다른 글
[인코딩] 문자 인코딩이란? (0) | 2024.06.23 |
---|---|
[Git & Github] 깃, 깃허브 (0) | 2024.06.23 |
[라이브러리 & 프레임워크] 라이브러리와 프레임워크란? (0) | 2024.06.22 |
[네트워크] 네트워크란? (0) | 2024.06.22 |
[프로세스 & 프로그래밍 언어] 프로세스와 프로그래밍 언어란? (0) | 2024.06.22 |