입사 면접때나 웹 개발을 하다보면 자주 볼 수 있는 단어이다. 이번에 다시 정리해보도록 한다.
참고
https://ko.wikipedia.org/wiki/API
API - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. NASA가 개발한 웹 API 문서 스크린샷 API(application programming interface 애플리케이션 프로그래밍 인터페이스[*], 응용 프로그램 프로그래밍 인터페이스)는 컴퓨터나 컴
ko.wikipedia.org
https://www.youtube.com/watch?v=ckSdPNKM2pY&ab_channel=%EC%BD%94%EB%94%A9%EC%95%A0%ED%94%8C
● API(Application Programming Interface)
컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의 소프트웨어 인터페이스이며 다른 종류의 소프트웨어에 서비스를 제공한다. (위키의 있는 의미가 뭔가 어색한 것 같아서 gpt한테 물어봄)
프로그램들 간에 상호작용할 수 있게 하는 인터페이스를 의미한다. 간단히 말해, API는 하나의 소프트웨어에서 다른 소프트웨어로의 데이터나 서비스 제공을 위한 규약이나 도구 모음이다.
● REST(Representational State Transfer)
여기서 "Representational"은 표현이라는 의미를 갖는다. 표현 상태 옮기다? 이동하다?
웹 시스템에서 리소스를 나타내고 상태를 전달하기 위한 아키텍처 스타일을 의미한다. 여기서 "Representational"은 리소스의 상태를 어떻게 표현하는가에 중점을 두고 있다. 리소스는 웹 시스템에서 식별 가능한 모든 것을 나타내며, 예를 들면 문서, 이미지, 서비스, 데이터 등이 될 수 있다. REST는 이러한 리소스를 어떻게 표현하고 전달할 것인가에 대한 원칙을 제공한다. REST는 주로 HTTP 프로토콜을 기반으로 동작하며, 각 리소스는 고유한 URI(Uniform Resource Identifier)로 식별되고, HTTP 메서드(GET, POST, PUT, DELETE 등)를 사용하여 해당 리소스의 상태를 조작한다. 리소스의 상태는 일반적으로 JSON 또는 XML과 같은 표준 데이터 포맷을 사용하여 표현된다.
인상 깊게 본 유튜브를 보고 내가 풀어서 정리한 내용이다. 밑에 처럼 쉽게 비유를 들어 이해 시키긴 쉽겠지만 어디가서 저렇게 대답하기엔 좀..ㅎㅎ;
ㆍAPI
Application Programming Interface
한 프로그램에서 다른 프로그램으로 데이터를 주고받기 위한 방법
유저와 서버가 데이터를 주고받는 방법
방법 → 코드
ex
API ≒ 메뉴판
→ 메뉴판에 적힌 메뉴를 주문
식당과 손님이 음식을 주고받기 위한 방법
ㆍAPI가 가져야할 내용
1. 요청방식(method)
2. 무슨 자료 요청할지(endpoint)
3. 자료요청에 필요한 추가정보(아이디, 이름 등)
+웹의 경우 REST API 라는 원칙에 따라 작성하면 좋음
모든 프로그램은 API를 가질 수 있음
네이버 로그인 기능을 사용하고 싶어서 해당 시스템에 필요한 변수들을 요청한다.
→ 메뉴판에서 음식을 시키는 것으로 이해할 수 있다.
그럼 거기에 맞는 응답값을 돌려준다.
→ 시킨 음식이 맞으면 그에 해당하는 것을 주고 아니면 에러를 뱉는다.
이정도로 이해하면 되지 않을까 싶다. 생각보다 Interface라는 단어도 많이 볼 수 있는데 이것도 나중에 시간이 되면 정리해보겠다.
'12. Data Communacations' 카테고리의 다른 글
데이터 통신 알고 있으면 좋은거? (0) | 2023.12.01 |
---|---|
URI, URL, URN (0) | 2023.11.30 |