인터페이스
- 기기를 만들면 사용자가 그걸 제어하기 위한 기능이다.
예) 티비에는 켜고 끄고 볼륨을 조절할 수 있는 기능이 있다.
-> 티비의 화면도 인터페이스에 속한다.
예. 소프트웨어에는 사용자가 사용하기 위해 스크롤을 내리는 것이나, 버튼이나, 켜고 끄는 것 등이 있다.
-> UI : User Interface
이처럼 기기와 사람 간에 소통을 위한 것이 인터페이스라면
서버와 기기들 사이에도 정보를 주고받는 지정된 형식이 있어야 한다
API
- Application Programming Interface
소프트웨어가 다른 소프트웨어로부터 지정된 형식으로 요청하고 명령을 받을 수 있는 수단을 API 라고 한다.
- 클라이언트는 서버에 정말 많은 요청들을 보내게 될 텐데, 각 요청들을 담당하는 서버에게 요청이 잘 전달되고 처리될 수 있도록 교통정리를 해 주는 "체계"가 API다.
- 어떠한 방식으로 정보를 요청해야 하는지, 그리고 그러한 요청을 보냈을 때 어떤 형식으로 무슨 데이터를 전달받을 수 있는지에 대해 정리한 일종의 규격.
꼭 네트워크 상에서만 있는 것이 아니다.
로컬 프로그램인 브라우저는 Web API 를 통해 자바스크립트로부터 특정 동작들을 지시받고,
윈도우에는 개발자들이 프로그램을 개발할 때 시스템이나 하드웨어에 대한 세세한 지식이 없어도 지정된 명령어로 동작을 수행하도록 소프트웨어를 짤 수 있는 Windows API 를 제공한다.
REST API
프론트엔드 웹에서 서버에 데이터를 요청하거나 배달 앱에서 서버에 주문을 넣거나 하는 등
이런 형식에서 오늘 날 많이 쓰이는 것들이 REST 란 형식의 API 이다.
즉 정보들이 주고 받아지는 데 있어서 개발자들 사이에서 널리 쓰이는 일종의 형식인 것이다.
과거의 SOAP 란 복잡한 형식을 대체한 것인데,
가장 중요한 특징은
각 요청이 어떤 동작이나 정보를 위한 것인지를 그 요청의 모습 자체로 추론 가능하다는 것이다.
개발자 혼자서만 어떤 것을 만든다면 문제가 없지만 나중에 다른 개발자와 협업을 하게 된다면
혼자서만 알아볼 수 있도록 만든 형식으로는 문제가 생길 것이다.
RESTful 하게 만든 API는 요청을 보내는 주소만으로도 대략 이게 무엇을 요구하는 요청인지 파악이 가능하다.
Private API
내부 API 로, 회사 개발자가 자체 제품과 서비스를 개선하기 위해 내부적으로 발행한다. 제 3자에게 노출되지 않는다.
Partner API
기업이 데이터 공유에 동의하는 특정인들만 사용할 수 있게 한다.
비즈니스 관계에서 사용되는 편이며, 종종 파트너 회사 간에 소프트웨어를 통합하기 위해 사용된다.
Public API
개방형 API 로 모두에게 공개된다. 누구나 제한 없이 API 를 사용할 수 있는 게 특징이다.
참고)
https://enjoyinjoanne.tistory.com/56
https://recipes4dev.tistory.com/153
'자라나라 PM' 카테고리의 다른 글
모듈, 패키지, 프레임워크, 라이브러리 (0) | 2022.07.13 |
---|---|
REST API 와 Websocket API 의 차이는? (0) | 2022.07.12 |
그리드시스템, 아임웹, 쿼리, MySQL, DBMS, 그누보드 (0) | 2022.07.11 |
아이피, 웹 호스팅 서버 아이피 (0) | 2022.07.05 |
코호트 분석이란? (코호트 리텐션, 동질 집단 분석,코호트 격리, 코호트연구) (0) | 2022.07.01 |