Computer Engineering/컴퓨터 과학(CS: Computer Science)

API란 무엇인가? (about API)

잇트루 2021. 4. 8. 17:00
반응형

1. API의 등장

프로그램을 개발하기 위해서는 많은 인력과 데이터를 요구하며 체계적이고 간결함을 요구하고 있습니다. 그렇기 때문에 기업에서 다양한 분야의 프로그램을 개발하기 위해서는 많은 비용과 시간이 들게 되는데, 이를 줄이기 위한 연구와 노력을 끊임없이 연구해 왔습니다. 이러한 결과물들 중 하나인 것이 바로 API인데요. API란 무엇일까요?

 

먼저, API는 개인 컴퓨터(Personal Computer)가 등장하기 훨씬 전인 컴퓨터 개발 초기 때부터 존재하고 있었습니다. 당시에는 대개 운영체제의 라이브러리를 구축하기 위해 사용되었으며, 메인 프레임 간의 메시지를 전달하는 경우도 있었지만, 항상 로컬 시스템에서 작동했습니다. 그로부터 약 30여 년이 지난 후에야 API는 로컬 환경에서 분리될 수 있었으며, 2000년대 초반에 드러 서고 난부터 데이터의 원격 통합을 위한 주요 기술이 되기 시작했습니다.

 

2. API(Application Programming Interface)란?

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

 

API는 응용 프로그램, 모바일 애플리케이션 등의 프로그램을 개발할 때 소프트웨어를 구축하고 통합하기 위한 정의 및 프로토콜 세트로도 볼 수 있습니다. API를 사용하면 특정 소프트웨어의 구현 방식을 알지 못하더라도 제품 또는 서비스가 서로 의사소통을 할 수 있으며 개발을 보다 쉽고 편리하게 할 수 있도록 해주는 역할을 합니다. 따라서 개발 인력과 시간, 비용 등을 절약할 수 있어 많은 소프트웨어 기업에서는 필수적으로 사용하고 있으며, 이를 통합 및 확장하기 위해 많은 연구, 개발을 통해 설계하기도 합니다.

 

 

API는 UI(User Interface)와 비슷한 상호작용 역할을 하며, 이는 서로 다른 시스템이 만나 동작하기 위한 의사소통 역할을 하며, 데이터를 전달 및 처리하며 사용자에게 여러 응용 프로그램의 작업을 수행하고 완료하는 데에 있어 언제 어디서나 정보를 제공하고 있습니다. 반면에 UI와는 달리 사용자의 눈에 보이지는 않습니다.

간단하게 설명하자면 작성된 프로그램은 API에게 데이터를 요청하게 되고, API는 요청받은 명령을 처리하기 위해 응용 프로그램 또는 애플리케이션과 상호작용을 하게 됩니다. 이후 결과물을 작성된 프로그램에게 전달하게 되는 것입니다. 이러한 방식으로 API는 프로그램들이 서로 상호작용을 할 수 있도록 요청, 명령, 처리하는 인터페이스입니다.

 

3. API의 접근 방식

API의 접근 방식에는 크게 세 가지가 존재합니다.

  • Private API : API를 기업이나 연구 단체 등에서 사용하는 다양한 애플리케이션과 시스템의 통합을 위해 사용하는 것으로 단체 내부에서만 사용할 수 있도록 하는 것입니다. 
  • Partner API : API를 특정 비즈니스 파트너와 공유하는 것으로, 공유받은 API를 품질 저하 없이 사용할 수 있으며 수익 창출을 목표로 사용하는 것입니다.
  • Public API : 모든 사람들에게 API를 제공하는 것으로, 개인이 API와 상호작용하는 프로그램을 무료로 개발할 수 있습니다. 다양한 아이디어를 통해 혁신적인 프로그램의 등장을 목표로 사용되고 있습니다.

 

4. API의 장점

앞서 API에 대하여 설명하면서 많은 장점들이 있었는데, 이 외에도 개발자들의 관점에서 크게 3가지의 장점이 있습니다.

  1. 자동화가 용이 : API를 통해 사람이 직접 조작하지 않아도 관련 내용이 자동으로 생성되고 처리되어 워크플로우가 빨라질 수 있습니다.
  2. 범위의 확장성 : API는 프로그램 사용 시 정보를 전달하는 기능이 있어 사용자의 환경에 맞춰서 전달할 수 있습니다. 또한 API에 직접 액세스 하지 않아도 콘텐츠가 자동적으로 생성 및 업로드되어 확장이 용이합니다.
  3. 적용력 : API는 변화 예측에도 큰 도움이 되기 때문에 API를 통해 데이터를 수집하고 전달하는 데 있어 유연한 서비스 환경을 구축할 수 있습니다.

 

5. 오픈 API 종류

여러 국내 및 해외 등 다양한 기업에서는 오픈 API를 제공하고 있습니다. 이를 통해 창업을 목표로 하는 개발자 또는 실습을 목표로 하는 개인 개발자들에게 무료로 제공되고 있어 독창적이고 새로운 프로그램들이 등장하는 것을 목표로 대중들에게 무료로 지원하고 있습니다. 대표적으로 구글, 네이버, 카카오 등에서도 지원하고 있으니 한 번쯤 구경해볼 만한 것 같습니다.

구글 : cloud.google.com/apis?hl=ko

네이버 : developers.naver.com/main/

카카오 : developers.kakao.com/

 

반응형