[Networking] API

임수정·2024년 7월 3일
0

📝 Learning Log

목록 보기
25/47
post-thumbnail

📍 API(Application Programming Interface)

프로그램들이 서로 상호작용하기 위한 인터페이스를 제공하는 것을 의미

API는 정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 매커니즘이다.
예를 들어, 기상청의 소프트웨어 시스템에는 일일 기상 데이터가 들어있다. 휴대폰의 날씨 앱은 API를 통해 이 시스템과 '대화'하여 휴대폰에 매일 최신 날씨 정보를 표시

한마디로 가장 큰 API 범주의 핵심은 애플리케이션(고유한 기능을 가진 모든 소프트웨어)을 서로 연결하여 서로 통신할 수 있다는 것!

📖 API의 역할

기능 제공 : API는 다른 소프트웨어들이 특정 기능을 사용할 수 있도록 인터페이스를 제공한다. 예를 들어, 파일을 읽고쓰는 기능이나 네트워크 통신 기능 등을 API를 통해 제공할 수 있다.

표준화 : API는 개발자가 다른 소프트웨어나 서비스를 사용할 때 일관된 방식으로 상호작용할 수 있게 표준화된 인터페이스를 제공한다. 이는 개발 생산성을 높이고, 코드의 재사용성을 증가시키고, 오류를 줄이는데 도움을 준다.

추상화 : API는 기능을 추상화하여 사용자가 내부 동작을 몰라도 쉽게 사용할 수 있도록 도와준다. 이는 복잡한 기능을 단순화하고 개발자가 고수준의 작업에 집중할 수 있도록 한다.

서비스 연결 : API는 서로 다른 시스템이나 서비스 간의 통신을 가능하게 하며, 이는 다양한 기능을 통합하여 더 큰 시스템을 구축할 수 있는 기반을 제공

📍 API 종류와 특징

API는 여러가지 형태로 존재
대표적으로 라이브러리 API와 웹 API가 있다.

📖 라이브러리 API

  • 라이브러리 API는 특정 프로그래밍 언어에서 사용되는 라이브러리나 프레임워크에서 제공되는 함수와 클래스 등을 사용하여 다른 소프트웨어 구성 요소와 상호작용할 수 있도록 인터페이스를 제공
  • 이러한 API를 사용하여 다른 라이브러리나 프레임워크의 기능을 호출하거나 사용자 정의 함수와 클래스를 작성할 수 있다.

📁 라이브러리랑 라이브러리 API

  • 라이브러리 : 코드의 모음으로, 특정 기능을 구현한 함수나 클래스를 포함
  • 라이브러리 API : 라이브러리가 외부에 제공하는 인터페이스로, 라이브러리를 사용하여 특정 기능을 조작하고 제어할 수 있는 방법을 정의

📖 웹 API

  • 웹 API는 인터넷을 통해 다른 웹 서비스나 애플리케이션과 통신하기 위해 설계된 API로, 일반적으로 HTTP를 사용하여 데이터를 전송한다.
  • 웹 API는 RESTful API, SOAP API 등 다양한 형태가 있으며, 이러한 API를 사용하여 데이터를 검색, 업로드, 업데이트 및 삭제할 수 있다.

📍 요약

API는 소프트웨어 응용프로그램에서 다른 소프트웨어 구성 요소 또는 서비스와 상호작용 하기 위한 인터페이스를 제공하는 프로그래밍 기술로써, API를 사용하면 다른 소프트웨어 구성 요소와 상호작용 하기 위해 필요한 복잡한 코드 작성을 줄일 수 있으며, 더욱 빠르고 효율적인 소프트웨어 개발을 가능하게 한다. 또한 API는 데이터를 보호하고 보안을 유지하기 위한 방법으로도 사용할 수 있다.

profile
언어는 거들 뿐...

0개의 댓글