18일차 2024.11.07(API)

칙촉·2024년 11월 7일

🎯시작 전 목표

1.API의 개념 이해

💻Today I learned

"API가 대체 뭐야?"
두루뭉술 어렴풋하게만 알고있던 API라는 개념을 질문을 듣고 설명을 해주려니 머리속이 새하얘졌다.
정확히 알고있는 지식이 아닌데 설명하려니 머리에 버그가 나는 것은 당연한 일이다.
그렇게 가장 먼저 든 생각은 '어째서 이걸 아직까지 공부하지 않았지?' 였다. 그래서 오늘 곰곰히 생각해봤다.
물론 하루만에 완벽히 이해할 수는 없겠지만, 적어도 오늘 이해한 바에 대해 다시 한 번 머리속에서 정리하기 위해 글을 써놓기로 했다.


API

응용 프로그램 인터페이스(Application Programming Interface)의 줄임말로, 소프트웨어 시스템간에 상호 작용을 가능하게 하는 규칙이나 인터페이스. 즉, 서로 다흔 소프트웨어 시스템이 데이터를 교환하거나 기능을 호출할 수 있도록 정의된 방법과 규칙이다.

구체적인 의미

  • 인터페이스
    API는 두 시스템이 서로 소통할 수 있는 인터페이스를 제공한다. 어떻게 요청을 보내고, 어떻게 응답을 받을지에 대한 규칙을 정의한다.
  • 메서드
    API는 특정 기능이나 서비스를 제공하는 방법을 정의한다.
  • 규칙과 계약
    API는 어떤 형식으로 요청하고, 어떤 형식으로 응답할 지 명확한 규칙과 계약을 정의한다. 이를 클라이언트측에서 맞춰야 한다.

쉬운 비유를 해보자면 자판기로 예시를 들 수 있다.
인터페이스 - 자판기의 버튼에 해당하며, 이는 사용자로 하여금 어떤 음료를 선택할지에 대한 방법(버튼)을 제공한다.

메서드 - "버튼을 누르면 음료를 제공하는 동작"에 해당하며, 그 자체가 하나의 메서드라고 할 수 있다.

규칙과 계약 - 자판기는 "어떤 버튼을 누르면 어떤 음료가 나오는지"에 대한 규칙을 제공한다. 그렇기에 사용자는 이 규칙에 따라 원하는 음료에 해당하는 버튼을 누르고, 이에 따라 자판기는 규칙에 해당하는 음료를 제공한다.

profile
강세민

0개의 댓글