🌱 기초 네트워크
API는 무엇의 약자인가요?
쉽게 이해하기
식당에서 메뉴판을 보고 주문하는 것과 비슷해요. 손님(프로그램)은 주방(서버)이 어떻게 요리를 만드는지 몰라도, 메뉴판(API)에 있는 대로 주문하면 원하는 음식을 받을 수 있죠. API도 마찬가지로 내부 구조를 몰라도 정해진 방법으로 요청하면 원하는 데이터를 받을 수 있어요.
핵심 정리
Application Programming Interface의 약자로, 프로그램끼리 대화하는 규칙이에요.
자세히 알아보기
API는 Application Programming Interface의 약자예요. '응용 프로그램 프로그래밍 인터페이스'라는 뜻인데, 쉽게 말하면 '프로그램들이 서로 소통하는 방법'이에요. 인터페이스(Interface)는 '접점', '경계면'이라는 뜻으로, 두 시스템이 만나서 상호작용하는 지점을 의미해요.
예를 들어 카카오 로그인 기능을 내 앱에 추가한다고 해볼게요. 내가 카카오의 내부 시스템을 직접 만질 수는 없지만, 카카오가 제공하는 API를 사용하면 '카카오야, 이 사용자 로그인시켜줘'라고 요청할 수 있어요. 카카오 API는 정해진 규칙대로 요청을 받아서 처리한 뒤, 결과를 돌려줘요.
실무에서는 API를 통해 다양한 서비스를 연결해요. 날씨 앱은 기상청 API에서 날씨 데이터를 받아오고, 배달 앱은 카카오맵 API로 지도를 보여주고, 결제 기능은 토스 API나 네이버페이 API를 사용해요. 이렇게 하면 모든 기능을 직접 만들 필요 없이, 다른 회사가 잘 만들어놓은 서비스를 가져다 쓸 수 있어요.
API에는 여러 종류가 있어요. REST API, GraphQL API, WebSocket API 등이 있는데, 가장 많이 쓰이는 건 REST API예요. 개발자들은 API 문서를 보고 '어떤 URL로 요청하면 어떤 데이터를 받을 수 있는지' 확인한 뒤 프로그램을 만들어요. 요즘은 ChatGPT API처럼 AI 기능을 제공하는 API도 많이 나오고 있어요.