API가 뭔지 부터 아는게 중요하다.
API(Application Programming Interface)는 소프트웨어가 서로 소통할 수 있도록 돕는 "중간 다리" 역할을 한다.
쉽게 말해, 특정 기능을 다른 프로그램이나 서비스에서 사용할 수 있게 해주는 통로다.
API를 식당으로 비유하자면
API를 이해하기 쉽게 식당의 서버로 비유할 수 있다.
- 손님(클라이언트):
손님은 먹고 싶은 음식을 서버에게 요청한다. 주방이 어떻게 생겼는지, 요리를 어떻게 만드는지에 대해 알 필요는 없다. - 서버(API):
서버는 손님의 주문을 받아 주방에 전달하고, 요리가 완성되면 다시 손님에게 가져다준다.
-> 손님은 "요리"를 요청하고 결과만 받는다. - 주방(백엔드 시스템):
실제로 음식을 만드는 곳이다. 손님은 주방과 직접 소통하지 않고, 서버를 통해서만 요청한다.
API의 동작 방식
API는 주로 요청(Request)과 응답(Response)으로 이루어진다.
- 요청: 클라이언트가 필요한 작업(예: 데이터 조회, 저장)을 요청한다.
예: "오늘의 날씨를 알려줘"라는 요청. - 응답: 서버(API)가 요청에 따라 처리한 결과를 클라이언트에게 돌려준다.
예: "오늘은 맑고 25도입니다"라는 응답.
API를 사용하면 좋은 이유
- 내부 구조를 몰라도 사용 가능
- 사용자는 내부 로직이나 복잡한 과정을 알 필요 없이 API를 통해 기능을 요청하고 사용할 수 있다.
- 효율적인 협업
- 프론트엔드와 백엔드가 명확하게 역할을 분리할 수 있어 협업이 용이하다.
- 재사용 가능
- 이미 만들어진 API를 다른 프로젝트에서도 활용할 수 있어 개발 시간을 줄일 수 있다.
API를 만드는 역할: 백엔드 개발자
백엔드 개발자의 중요한 역할 중 하나는 API를 설계하고 구현하는 것이다.
백엔드 개발자는:
- 클라이언트의 요청을 받고,
- 요청을 처리하고, 데이터를 가공하거나 변환한 뒤,
- 최종적으로 적절한 응답을 돌려준다.
이 과정에서 API는 프론트엔드와 백엔드가 서로 약속한 사용 설명서처럼 작동한다.
따라서 API를 쓰면 작동할 수 있게끔 그 기능을 만드는게 백엔드의 역할 중 하나인 것이다.
'spring > 그 외 알게 된 것' 카테고리의 다른 글
| JDBC와 JPA (0) | 2024.06.25 |
|---|---|
| URI 와 URL은 뭐가 다를까 (0) | 2024.06.18 |
| JDBC들어가기전 용어 정리 (0) | 2024.06.15 |
| Spring MVC 용어 (0) | 2024.06.15 |
| 왜 수동 Bean 등록에서도 어노테이션을 사용하는가? (0) | 2024.06.05 |