API ( Application Programming Interface ) :
。어플리케이션간 원활하게 통신할 수 있도록 만든 인터페이스
▶ 모든 접속을 표준화하므로 클라이언트의 플랫폼 ( OS, HW )에 관계없이 동일한 접근방법을 가진다.
。API를 통해 호출 시 항상 일관성이 있는 응답을 보장
。Server 또는 DB에 대한 출입구 역할
▶ API를 통해 Client와 Server 간 Request와 Response를 주고받는 방식으로 동작
。캡슐화 : 클라이언트가 API의 세부구현에 대해 전혀 몰라도, API Document를 통한 간략한 사용법만 확인하여 활용 가능
▶ API Document가 없는 경우 사용이 거의 불가능.
API 종류
Web API :
。인터넷을 통해 데이터를 주고받는 API
ex ) REST API
OS API :
。OS에서 제공하는 API로서 프로그램이 OS 기능을 활용할 수 있게함.
ex ) Windows API , Linux API
Library API :
。프로그래밍언어에서 제공하는 API로서 개발자가 프로그래밍언어에서 특정 기능을 쉽게 활용할 수 있도록 보조.
ex ) Python의 math Library
History API : React의 <BrowserRouter>
。브라우저가 제공하는 API로서 사용자가 페이지 새로고침을 하지 않아도 브라우저의 URL을 변경 가능.
▶ 뒤로가기/앞으로가기 같은 탐색 기능을 사용가능.
▶ 해당 API로 SPA에서 페이지 리로드가 발생하지 않는 장점이 존재.