본문 바로가기
won2dev-log
HomeArchiveTagsCategoriesAboutProjects
HomeArchiveTagsCategoriesAboutProjects
won2dev-logwon2dev-logwon2dev-log

비전공 개발자의 로그 | won2dev-log

Navigation
  • Home
  • Archive
  • About
  • Projects
Categories
  • Docs
  • TIL
  • Automation
  • Git · GitHub
  • Project
Tags
  • TIL
  • Java
  • Spring
  • Backend
  • n8n
더보기
About

기록을 거름 삼아 공유는 성장을 만든다.

LicensePrivacy
© won2dev 2026. All rights reserved.
Home›Docs›국밥 하나 시켰을 뿐인데… API 개념이 이해되기 시작했다
Docs

국밥 하나 시켰을 뿐인데… API 개념이 이해되기 시작했다

won2dev·2025년 05월 21일
#Spring#DevNote
국밥 하나 시켰을 뿐인데… API 개념이 이해되기 시작했다

📈 API 라는건 무엇일까?

📌 API = Application Programming Interface

프로그램끼리 소통하는 방법이다. 즉, 프론트엔드(화면)와 백엔드(서버)가

서로 데이터를 주고받는 약속이라고 생각하면 이해하기 쉽다.

필자는 간단하게 국밥 키오스크로 예를 들었다.

📦 예시로 이해하기 (김천국밥 주문기계)

📍 상황

김천국밥집 키오스크(프론트엔드)를 이용해서 국밥을 주문(요청)하면

주방(백엔드)에서 국밥을 만들어 응답(결과) 해준다.

단계설명실제 API 의미
국밥 하나 주세요!키오스크가 주방에 요청👉 API 요청 (HTTP 요청)
국밥 만들고 있어요~!주방에서 처리 즁👉 서버에서 로직 처리
주문하신 국밥이요~!주방에서 국밥 전달👉 API 응답 (JSON 데이터 등)

📑 API 명세서가 왜 필요한가?

🎯 API 명세서는 "주문서(빌지)" 와 같다.

  • 프론트 개발자와 백엔드 개발자가 함께 협업하려면 "무엇을 어떻게 주고받을지"에 대한 명확한 약속이 필요하다.
    • 어떤 주소(URL)로 요청해야 할까?
    • 어떤 데이터를 보내야 하지?
    • 어떤 형식으로 응답이 오지?

📋 예시 (간단한 API 명세서)

항목내용
API 이름회원가입 API
요청 주소POST /users/signup
요청 데이터{ "username": "won2", "password": "1234" }
응답 데이터{ "message": "회원가입 성공" }

이런 식으로 API 명세서를 작성하면:

  • 프론트는 이 명세서대로 요청을 보내고
  • 백엔드는 이 명세서대로 응답을 보내는 약속이 된다.

✍️ 한 줄 마무리

처음엔 API가 너무 어려웠는데, 국밥 주문에 비유해보니까 생각보다 쉬웠다, 왜 이런 생각을 왜 못했을까 싶다…😅

API는 아래 키워드만 생각하자

API란?

프로그램끼리 통신하는 "데이터 주고받기 규칙"

API 명세란?

그 규칙을 미리 문서로 정리해놓은 것

왜 필요한가?

협업할 때 서로 헷갈리지 않고 정확히 연결하려고

공유하기
이전 글Spring_day_Project - 일정 관리 앱 개발다음 글 Git & GitHub 기초 완전 정복

목차

  • 📈 API 라는건 무엇일까?
  • 📌 API = Application Programming Interface
  • 📦 예시로 이해하기 (김천국밥 주문기계)
  • 📍 상황
  • 📑 API 명세서가 왜 필요한가?
  • 🎯 API 명세서는 "주문서(빌지)" 와 같다.
  • 📋 예시 (간단한 API 명세서)
  • ✍️ 한 줄 마무리

카테고리

Docs

태그

#Spring#DevNote

최근 글

Git 요약 (1) - Rebase, Stash, Squash MergeTIL - MSA 핵심 요소 정리TIL - (4) Spring 어노테이션 정리: Mockito를 활용한 단위 테스트TIL - (3) Spring 어노테이션 정리: Lombok Getter, Setter와 생성자TIL - (2) Spring MVC와 WebFlux의 차이: 블로킹과 논블로킹