반응형

사전적의미의 API(Application Programming Interface)


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


“응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스”

 

인터페이스(Interface)란?

인터페이스란 상호간의 소통을 위해 만들어진 접점이다.

(사람과 사물, 사람과 사람, 사물과 사물 등 어떠한 서로다른 두개 이상의 것들이 소통하기 위한 방법)


자동차와 사람을 예로 들어보면

자동차가 멀리있고 사람이 단순히 “열려라" 라고 말한다고해서 차의 문은 열리지 않는다.(음성인식으로 될 수도 있겠지만 안된다고 가정) 

하지만 스마트키에 있는 열림 버튼을 누른다면 자동차의 문이 열리게 될 것이다. 이처럼 스마트키로 인해서 자동차의 문을 열었기 때문에 스마트키는 자동차와 사람의 소통의 접점인 인터페이스라고 할 수 있다.

다른 예시로는 컴퓨터에 타이핑을 하고싶을 때 타이핑을 할 수 있도록 해주는 키보드가 인터페이스라고 할 수 있다.


인터페이스에서 "소통"이라함은 쉽게 말해서 읽거나 쓰는 것을 말한다.

컴퓨터의 입장에서 보면 쓰는 인터페이스는 "키보드", 읽는 인터페이스는 "모니터" 라고 할 수 있다. 


요즘 시국에 모르는 사람이 없는 배달앱으로 예를 들어보면

배달앱을 통해 집 주변 치킨집의 목록을 확인하고 원하는 치킨을 골라 주문까지 완료하였다. 이 때 배달앱의 메뉴목록, 주문하기 버튼 등 앱에 있는 모든 화면을 인터페이스라고 할 수 있다. 배달앱이라는 시스템은 이러한 화면을 통해 사용자와 소통을 하기 때문이다. 이처럼 사용자가 사용하는 인터페이스를 줄여서 UI, User Interface라고 한다.

위에서 언급한 예시들 중 자동차와 컴퓨터의 예시는 하드웨어적인 UI라고 하고 배달앱의 예시와 같은 앱, 웹과 같은 것들은 소프트웨어적인 UI라고 한다. 이러한 UI가 웹을 통해보여지면 웹 UI, 모바일을 통해 보여지면 모바일 UI라고 한다.

정리하면 인터페이스(Interface)란 소통하기 위한 접점이고
UI(UserInterface)란 사용자가 소통하기 위한 접점이다. 

API(Application Programming Interface)란?

API는 사용자가 아닌 응용프로그램에서 소통하기위해 사용하는 인터페이스이다.

응용프로그램이란 운영체제(윈도우, 안드로이드 등)에서 실행되는 모든 소프트웨어를 뜻하며 다른말로는 "애플리케이션"이라고 한다.


날씨 정보를 알려주는 앱을 만든다고 생각해보자. 기타 디자인들도 매우 중요하겠지만 핵심적인 부분은 날씨 정보를 알려주는 기능이다. 날씨 정보는 기상청에 요청을 하여 응답을 받고 화면에 나타내면 된다. 이 때 날씨 정보 데이터를 가져올 수 있도록 기상청에서 제공하는 접점을 API라고 한다.

이 API의 모양은 http://api.data.go.kr/weather/list 와 같이 생겼다. 

기상청에서 이러한 모양의 API를 제공하여주기 때문에

앱에서는 curl http://api.data.go.kr/weather/list 와 같은 식으로 요청하여

{
	"today": "2021-04-09"
	"weather": "맑음"
}

와 같이 생긴 데이터를 응답받아 사용자에게 보여줄 UI를 개발하게 된다.

이러한 형식의 API는 HTTP API라고 한다.

 


다시 배달앱을 예시로 들어보겠다.

배달앱을 개발하는 회사의 백앤드 개발팀은 데이터를 조회하고 저장할 수 있도록 다양한 API들을 개발하게 될 것이다.

EX) 가게목록 API / 메뉴목록 웹 전용 API / 메뉴목록 모바일 전용 API / 주문 API 등...

프론트앤드 개발팀에서는 이러한 API를 사용하여 사용자에게 보여질 UI를 개발한다. 

이렇게 사용자는 UI를 사용하여 소통하고 애플리케이션은 API를 사용하여 소통을 하게된다.

정리하면 API란 애플리케이션에서 데이터를 읽거나 쓰기위해
사용하는 인터페이스이다.

Private API / Open API

회사 자체 서비스를 만들기 위해 사내에서 개발하고 사용하는 API를 Private API라고 하고 이 Private API는 제 3자에게 공개 되지 않는다.

위에서 예시로든 기상청 API와 같이 누구나 사용할 수 있도록 개방해놓은 API를 Public API, Open API라고 한다.

이러한 Open API에는 "공공API, 유튜브API, 인스타그램API, 페이스북API, 네이버API, 카카오API" 등 많은 플랫폼에서 자사 데이터나 기능을 활용할 수 있도록 다양한 API를 제공해준다.

이러한 API는 HTTP API를 말한다.


위의 내용은 API란 무엇인가? | 초보자를 위한 쉬운 개념 정리!! 를 참고하여 정리한 글 입니다.

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기