하마코

[CS] API 개념을 정리해보자! 본문

DEV/Computer Science

[CS] API 개념을 정리해보자!

hamaco.dev 2025. 3. 29. 17:00

안녕하세요! 하마코입니다. 😊

API 연결도 많이 하고 개념도 대충은 알고 있지만, 정리하며 공부해본 적은 없어서 API를 공부해보려고 합니다!


API

API는 Application Programming Interface의 약자인데요,

둘 이상의 컴퓨터 프로그램이 서로 통신하는 방법이자 컴퓨터 사이에 있는 중계 계층을 의미합니다.

API는 프로토콜(HTTP/HTTPS/..), 메서드(GET/POST/..), 데이터타입(JSON/XML)이 정의되어 있어요!

 

API는 과거부터 발전되어온 용어로 라이브러리 및 프레임워크를 설명하는 명세서, 웹상에서 WEB API, WEB Socket API 등을 가리키는데 현재를 기준으로 API라고 하면 보통 WEB API를 기준으로 설명합니다.

 

풀네임에서 볼 수 있듯 API는 "Interface(인터페이스)"입니다.

인터페이스란 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호를 주고받는 경우의 접점이나 경계면을 뜻하는데요.

경계면인 만큼 해당 컴퓨터의 내부 서버가 어떻게 구현되어있는지 몰라도 인터페이스로 통신이 가능합니다.

 

API의 장점 😊

  1. 서비스의 중요한 부분을 드러내지 않아도 된다.
    : DB 설계 구조, 드러내고 싶지 않은 DB 테이블 정보, 서버 상수값 등을 보여주지 않아도 된다.
  2. 사용자는 해당 서비스가 어떻게 구현되는지 알 필요없이 필요한 정보만 받을 수 있다.
  3. OPEN API의 경우 앱 개발 프로세스를 단순화시키고 시간과 비용을 절약할 수 있다.
  4. 내부 프로세스가 수정되었을 때 API를 수정 안 되게 할 수 있다.
    : 내부 DB, 서버 로직이 변경되어도 사용자가 앱을 업데이트하는 일은 줄어들 수 있다.
  5. 제공자는 데이터를 한 곳에 모을 수 있다.
    : 사이트 방문자, 클릭 이벤트 등의 이벤트를 집계하고 싶을 때 만들고 이벤트 발생 시 호출하게 만들 수 있다.

API 종류

내부적으로 사용되는 private는 주로 해시키를 하드코딩해놓고 이를 기반으로 서버-서버 간 통신을 합니다.

모든 사람이 사용 가능한 public은 많은 트래픽을 방지하기 위해 하루 요청수의 제한, 계정당 몇 개 등으로 관리합니다.

 

예를 들어, 네이버 Open API 개발자센터에도 API 일 허용량이 존재하는데요!

검색의 경우 일 25,000회, 단축 URL의 경우 일 25,000회, 얼굴 인식의 경우 일 1,000회 등으로 제한이 되어있습니다.


오늘은 개발자의 필수 지식 API에 대해 알아봤습니다!

도움이 되셨다면 좋아요, 댓글 남겨주세요!

 

긴 글 읽어주셔서 감사합니다. :)

HAMACO