API 개념 이해하기

hyunwoo Jin·2022년 7월 15일
0

API ?

API(Application Programming Interface) 는 어플리케이션 소프트웨어를 구축하고 통합하는 정의 및 프로토콜 세트이다. 때때로 API는 정보 제공자와 정보 사용자 간의 계약으로 지칭되며 소비자에게 필요한 콘텐츠(호출)와 생산자에게 필요한 콘텐츠(응답)를 구성한다.
...네?ㅋㅋ

API의 역할은 ?

API는 서버와 데이터베이스에 대한 출입구 역할을 한다
API는 모든 사람들이 데이터베이스에 접근하는 것을 방지하기 위해 서버와 데이터베이스에 대한 출입구 역할을 하고 허용된 사용자에게 접근성을 부여해준다.
API는 애플리케이션과 기기가 원활하게 통신할 수 있도록 한다
애플리케이션(스마트폰의 어플 or 프로그램을 의미)과 기기가 데이터를 원활하게 주고받을 수 있게 돕는 역할을 한다.
API는 모든 접속을 표준화한다.
기기나 운영체제와 상관없이 누구나 동일한 액세스를 얻을 수 있다.API는 범용 플러그처럼 작동한다고 볼 수 있다.
(호환성에 영향을 받지 않는다라고 이해하면되나..?)

API의 유형은 ?

private API

private API는 내부 API로, 회사 개발자가 자사품과 서비스 개선을 위해 내부적으로 발행한 것 3자에게 노출되지 않는다. (이름 그대로 private)

public API

public API는 개방형 API로, 모두에게 공개된다. 누구나 제한 없이 API를 사용할 수 있다. (open API라고도 하는 것 같다!)

partner API

partner API는 기업이 데이터 공유에 동의하는 특정인들만 사용할 수 있다. 비즈니스 관계에서 사용되는 편이고, 종종 파트너 회사 간 소프트웨어를 통합하기 위해 사용된다.

유형에 대한 개인적인 생각

youtubeinstagram 을 비롯한 커뮤니티나 SNS 에 업로드된 게시물의 공개범위 와 비유할 수 있었다.

  • public API : 전체 공개 (모두가 볼 수 있음)
  • partner API : 일부 공개 (링크가 있는 사용자만)
  • private API : 비공개 (모두가 볼 수 없음)

API를 사용하는 이유

private API 를 사용할 경우 개발자들이 애플리케이션 코드를 작성하는 방법을 표준화함으로써 간소화되고 빠른 프로세스를 처리할 수 있다.
소프트 웨어를 통합할 경우 개발자들 간의 협업을 용이하게 만들어 줄 수 있다.
public API, partner API 를 사용하면 기업의 경우 타사 데이터를 활용하여 브랜드 인지도를 높일 수 있고 고객 데이터베이스를 확장하여 전환율을 높일 수도 있다.

  • 협업에서의 용이함
  • 코드 작성 표준화로 인한 간소화와 빠른 프로세스 처리
  • 다양한 데이터베이스의 활용

코드 작성 표준화로 인한 간소화가 잘 와닿지 않는다. 활용 예시를 참고하면 이해할 수 있을 것 같다.

개념에 대해 오해할 수 있는 부분

  • 제공 받는 개발자가 직접 구현의 여부는 API의 정의와 관련없다.
  • 다른 사람이 편하게 사용할 수 있게 만든 것이라는 말 또한 API를 정의하는 것에는 관련 없다.
  • API 를 제공한다는 것은 해당 기능을 제공해주는 개발자들이 편하게 설명하기 위해 함축해서 무엇무엇 API라고 하는 것 뿐 엄밀히 말하자면 API의 개념이 아니다.
  • API프로그램과 프로그램을 이어주는 매개체 그 자체의 의미를 가지며 가장 가까운 개념은 연결통로 라고 볼 수 있다.
    ex) "네이버에서 맵 API를 제공한다."

네이버 서버에 있는 맵 기능을 다른 사용자들이 사용할 수 있게 만든 통로(API)를 제공한다는 뜻
API 를 통해 네이버 맵기능을 여러 사람들이 사용할 수 있게 프로그래밍하여 제공한다라고도 할 수 있다.

마치며

API 개념에 대해 공부한 것을 기록했다. 정리하자면 API는 정말 쉽게는 프로그램과 프로그램을 이어주는 연결통로 라 설명할 수 있을 것 같다. 하지만 통로에도 입출구가 존재할 것이고 입출구의 접근성에 대한 이해는 활용 예시를 꼭 참고해야 할 것 같다. 프론트엔드 공부를 하며 항상 나를 괴롭혔던 API 그놈의 API API.. 에 대해 어느정도 감이 잡혔고 후련하고 기분이 좋다.

profile
꾸준함과 전문성

0개의 댓글