인프런 커뮤니티 질문&답변
nestjs 에서 api
작성
·
223
답변 1
3
api는 "application programming interface = 기능이 있는 프로그램에 접근이 쉽도록 하는 것" 입니다.
즉, 프로그램들이 서로 상호작용하는 것을 도와주는 매개체입니다.
좀 더 구체적인 사례를 들자면, 자바로 만들어진 프로그램 A, 파이썬으로 만들어진 프로그램 B, 자바스크립트로 만들어진 프로그램 C가 있다고 가정하겠습니다. A, B, C에서 공통적으로 사용하고 싶은 기능 Y가 있다고 한다면 Y는 자바로 만들어야 할까요? 파이썬으로 만들어야 할까요? 아니면 자바스크립트로 만들어야 할까요? 베스트는 3개의 언어에 모두 인식할 수 있는 "규칙"으로 만들면 되는 것입니다. 이 규칙을 지키며 만든 것이 API입니다. A, B, C를 만든 개발자는 Y가 어떻게 만들어 졌는지 몰라도 사용할 수 있으며 A, B, C 뿐만 아니라 Go언어로 만든 D에도 동작이 가능합니다. 여기서 "규칙"에 해당하는 것, 여러 프로그램에서 호환되는 포멧(확장자)가 바로 JSON입니다. 그리고 이 JSON을 반환하는 프로그램이 바로 API인 것이죠.
이것은 많은 사례일뿐 API의 정의는 "기능이 있는 프로그램에 접근이 쉽도록 하는 것", "프로그램들이 서로 상호작용하는 것을 도와주는 매개체"입니다. 해당 의미에 맞으면 API라고 할 수 있는 것이죠. 예를들어 시스템 엔지니어링에서 운영체제 또한 API를 제공합니다.
여기까지가 이론적인 설명의 전부입니다. 애초에 개념 자체가 추상적이라 직접 사용해보시거나 만들어보시면 이해하는 것이 좋을 것 같습니다! 추가적인 문서를 읽으시면서 정리하시면 좋을 것 같습니다.
https://www.redhat.com/ko/topics/api/what-are-application-programming-interfaces
저희는 NestJS를 통해 API를 개발하는 것이 목표입니다. 프론트엔드에서 사용 가능한 API를 만드는 것이죠.





.png?w=112)
답변 너무 감사합니다 ㅜㅜ