-
API(Application Programming Interface)컴퓨터/JavaScript_typescript 2020. 1. 7. 08:57
* API란?
- 외부에서 사용하는 사람이 필요한 것만 노출해 두고 인터페이스, API라고 부른다
- 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
프로그램과 또 다른 프로그램을 연결해주는 일종의 다리
내가 만든 서비스가 개인 개발자, 기업, 기관이 제공하는 기능, 프로그램을 사용할 수 있게끔 도와주는 중간 매개체
[ 언제 처음 등장했나? ]
1. 1964년 등장 : 하드웨어 독립성을 위해 사용했다
서로 다른 부품마다 개발자가 일일이 프로그래밍을 작성하기 보다
HAL ( hardware abstraction layer: 하드웨어 추상화 계층 )을 통해
각기 다른 모니터에 출력 가능하거나 각기 다른 하드웨어 부품에 작성하는 일들이 쉬워졌다
2. 1984년 Mac OS, 1985년 Windows(80년대 중반 os 등장)
각각의 운영체제에서 동작하는 애플리케이션을 만들기 위해 운영체제에서 제공하는 API를 이용해서 만듦
맥은 cocoa API, windows는 Windows API 이용해서 애플리케이션 만들고, 파일에 데이터 저장
3. 1990년도 인터넷 대중화
다양한 기기에서 서버에 있는 데이터를 읽고 쓰기 위해서는 서버에서 제공하는 Web API 이용
HTTP : 네트워크에서 기기들간에 의사소통해나가는 규격 사항
* Web API를 어떻게 디자인해서 적용할 것인가 - 서버에 있는 데이터 읽고 쓸 때
1) SOAP( Simple Object Access Protocol )
=> 모든 네트워크의 요청과 반응을 XML 데이터 포맷에 저장해서 주고 받음
2) REST ( Representational State Transfer )
Post, Get, Put, Delete
JSON 포맷으로 주고 받는다.
* Frameworks/Libraries : 우리가 이용할 수 있는 클래스나 함수들을 API라고 한다.
ex. filesAPIs, DOMAPIs, LocationAPIs, contextAPIs
* 프로젝트 내부에서 쓰이는 클래스나 모듈 내 함수 등도 API라고 한다
[ Public, Open API ]
회사 내부에서 사용하는 Web API를 외부의 다른 개발자가 이용할 수 있도록 오픈한 것
[ 유용한 open api들 ]
giphy developers
spotify web api
요리 : 영양가 레시피 관련 EDAMAM
밈 : http://apimeme.com/?ref=apilist.fun
증권사 : 증권사 API
공공 데이터 포털 : www.data.go.kr/tcs/dss/selectDataSetList.do
** github.com/public-apis/public-apis
** 카카오 : developers.kakao.com/product
'컴퓨터 > JavaScript_typescript' 카테고리의 다른 글
Template, Tagged Template literals, 함수이름`HTML내용` (0) 2020.01.19 [javascript] recursion, element.matches(selectorString), ~.함수이름 == -1이면 쓸 수 없는 함수인 것 (0) 2020.01.13 메서드 (0) 2020.01.03 javascript 함수 3 (0) 2019.11.18 [JavaScript] Template literal (0) 2019.08.25