저번에 REST API에 이어서 이번에는 API에 대해 설명드리겠습니다.
Application Programming Interface
API는 개발자가 자신의 프로그램을 위해서 다른 프로그램이나 소프트웨어를 사용할 때 그 구조나 어떻게 구현 됐는지 알지 못하더라도 사용할 수 있게 해 줍니다.
만약 여기서 윗 문장이 이해가 되셨다면 더 이상 읽지 않으셔도 됩니다.
그럼 현실 두 가지 예시를 들어 설명드리겠습니다.
첫 번째 예시로 레스토랑에서 손님이 서버에게 주문을 했습니다.
그럼 여기서 서버들이 음식을 가져다주기 위해서 어떤 게 필요할까요? 음식 레시피? 요리사의 경력?
음식 이름만 알고 그 이름을 주방에 전달만 해주면 됩니다.
그럼 반대로 요리사의 경우 서버에게 음식을 주기 위해서는 어떻게 해야 할까요? 주문한 서버의 가족 관계? 서버의 심리적 상태? 아님 서버에게 주문한 손님의 기분? 그냥 이 주문을 넣은 서버의 이름만 알면 됩니다. 그냥 불러서 가져가라 하면 되니깐요.
그러면 정리하자면 서버는 요리사가 이해할 수 있는 입력값만 있음 되고 요청을 처리한 요리사의 출력값을 서버가 이해만 한다면 손님의 요청사항은 해결됩니다.
그럼 두 번째 예시로 실제 프로그램으로 설명하겠습니다.
우리가 예를 들어 웹사이트를 만들기 위해 온라인 데이터배이스를 이용해야 합니다.
그러면 온라인 데이터배이스가 우리의 요청을 이해하게 하려면 어떻게 해야 할까요?
그 데이터베이스가 이해할 수 있는 API를 사용하면 됩니다. 그리고 데이터베이스가 다시 전해준 결과를 우리가 이해해서 웹사이트에 보일 수 있도록 설정하면 됩니다. 즉, 저번에 올린 REST API를 사용하면 됩니다. 어떤가요? 간단하죠?
이렇게 API를 사용하게 되면 많은 일들을 할 수 있습니다. 우리가 직접 우리 프로젝트에 필요한 프로그램을 다시 만들거나 하지 않고 기존에 만들어진 다른 프로그램과 소프트웨어를 사용할 수 있게 만들어진 API만 이용하면 되니깐요. 물론 저는 여태 REST API만 설명했으나 이 블로그를 통해 다양한 API를 소개해드릴 겁니다.
그런데 이 글을 쓰기 위해 참고한 RedHat이라는 웹사이트에서 제 Cookies를 가져가겠다네요.
뉴진스 쿠키일까요?(죄송합니다.) 그럼 도대체 Cookie는 뭘까요??
* 항상 정확한 정보를 드리고 싶지만 실수가 있을 수도 있습니다!
* 실수를 찾게 되거나 질문이 있으시면 댓글 달아주세요!!
'개발일반 > 도대체' 카테고리의 다른 글
도대체 OSI Model은 뭘까요? : 7 Layers (0) | 2023.02.20 |
---|---|
도대체 HTTPS는 뭘까요? (0) | 2023.02.17 |
도대체 HTTP는 뭘까요? (0) | 2023.02.16 |
도대체 Cookies(쿠키)는 뭘까요? (0) | 2023.02.15 |
도대체 REST API는 뭘까요? (0) | 2023.02.13 |