API이란?

최대환·2021년 5월 9일
0

개발 용어

목록 보기
1/1

저번주 목요일날 학원에서 프론트앤드랑 백앤드랑 처음으로 만나 같이 그동안 서로 만든 westagram의 로그인기능과 회원가입기능을 연결시켜보았다. 그 과정에서 프론트앤드 분이 'api주소가 어떻게 되요?'라고 물어봤는데 순간 api주소가 정확히 뭘 가르키는지 헷갈렸다. 그래서 api관해 확실히 정리하고자한다.


인터페이스

API가 뭔지 알기위해서는 뭔저 인터페이스가 뭔지 알아야한다.
위키백과에서 인터페이스란 '인터페이스(interface)는 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호를 주고받는 경우의 접점이나 경계면이다.' 이라고 정의 되어있다.
쉽게 풀이해 보자면 서로 다른 두 개(사람과 사람, 사람과 사물, 사물과 사물) 사이에서의 신호를 주고받는 접점을 말한다.

  • 사람과 사물간의 인터페이스
    우선 사람과 사물을 예로 들자면 당신이 자동차 잠금을 풀기위해 자동차 키를 쓰는것을 생각하면 되겠다. 여기서 자동차키는 자동차와 사람의 소통을 도와준다.
    또다른 예시로는 사용자와 컴퓨터가 소통하기 위해 사용하는 키보드,화면이 되겠다. 소통이라고 하면 쉽게 읽고, 쓰는것을 의미하는데 화면으로 컴퓨터에게서 온 정보를 읽고, 키보를 활용해 정보를 쓰니깐 화면과 키보드는 인터페이스이다.

UI

UI란 User Interfacedml 약자로 사용자와 사물이나 시스템 사이에 의사소통을 할 수있도록 한 매개체이다. 예를 들어보면 배달앱에서 사용자가 치킨을 시키고자할 때 배달앱에 화면들과 버튼들이 있다. 우리는 그 배달앱의 화면과 버튼을 통해 배달앱과 의사소통을한다. 그러니 배달앱에 있는 주문하기 버튼, 메뉴목록 버튼 등 모든 화면과 버튼은 UI라고 할 수 있다. 그 전 예시들과 다른것은 자동차키는 하드웨어적인 ui이고 배달앱의 화면은 소프트웨어적인 ui라고 볼 수 있다.

API

그럼 api란 뭘까? ui가 사용자가 소통하기 위해 사용하는 인터페이스 였다면 api는 Application Programming Interface의 약자로, 사용자가아닌 응용프로그램에서 소통하기 위해 사용하는 인터페이스이다. 여기서 응용 프로그램이란 운영체제에서 실행되는 모든 프로그램을 말한다.
예를 들어 우리동네 날씨 정보를 알려주는 앱을 만든다고 가정했을 때 중요한 것은, 기상청에서 날씨 정보를 가져오는 것이다. 이 때 앱에서 날씨정보를 가져올 수 있도록 하기위해 기상청에서 제공하는 접점을 api라고 한다. 일반적으로 api라고 하면 http api를 의미한다.
참고로 여기서 http는 HyperText Transfer Protocol 의 약자로 하이퍼텍스트를 빠르게 교환하기 위한 프로토콜의 일종으로 HTTP는 서버와 클라이언트의 사이에서 어떻게 메시지를 교환할지를 정해놓은 규칙이다.

profile
나의 개발지식 output 공간

0개의 댓글