1.1장: API란 무엇이며 왜 필요한가?
학습 시간: 30분
1. 소개: "우주 도킹 허브"로서의 API
우주선 사령관이라고 상상해 보세요. 우주선을 ISS에 연결하려면 표준 도킹 허브가 필요합니다. 우주선과 우주 정거장이 완벽하게 맞아도, 이것이 없으면 도킹할 수 없습니다.
API (Application Programming Interface)는 프로그램들을 위한 이와 같은 "도킹 허브"입니다. - 서로 다른 애플리케이션이 데이터를 교환하고 함께 작동할 수 있도록 하는 규칙 집합입니다. - 예시: 모바일 앱이 일기 예보를 표시할 때, 기상 서비스의 API를 사용합니다.
💡 우주 비유: API는 지구와 화성 로버 간의 통신 프로토콜과 같습니다. 로버는 자신에게 이해 가능한 형식(예: "분화구 사진 찍어")으로 명령을 받고, 작업을 수행한 다음 데이터를 다시 보냅니다.
2. API가 왜 필요한가?
-
개발 간소화 모든 것을 처음부터 만들 필요 없이, SpaceX API와 같은 준비된 API를 사용합니다.
-
프로세스 자동화 API를 통해 로봇 탐사선은 수동 개입 없이 데이터를 지구로 자동 전송할 수 있습니다.
-
시스템 통합 ISS 모듈 도킹과 같습니다: API는 당신의 애플리케이션을 결제 시스템, 데이터베이스, 심지어 망원경과도 연결합니다!
-
고유 데이터 접근 예를 들어, SpaceX API는 로켓 발사에 대한 실제 데이터를 제공합니다.
3. API는 어떻게 작동하는가?
- 클라이언트(당신의 프로그램)는 서버로 HTTP 요청을 보냅니다.
- 서버(예: NASA)는 요청을 처리하고 JSON 형식의 응답을 반환합니다.
- 데이터는 "우주 보물"입니다: ISS 좌표, 은하계 사진, 외계 행성 목록.
⚡ "Open Notify" API (ISS) 요청 예시:
응답:
4. API 유형 (간략 개요)
유형 | 우주 관련 예시 | 사용처 |
---|---|---|
REST | 표준 관제 센터 ↔ 위성 통신 | 웹 서비스 (90% 사례) |
GraphQL | "맞춤형 요청" (예: "행성의 크기와 질량만 줘") | 복잡한 시스템 |
SOAP | 구형 임무의 무선 암호화와 같음 | 기업용 애플리케이션 |
이 튜토리얼에서는 가장 인기 있는 형식인 REST API에 중점을 둡니다.
5. 우주 API 예시
- NASA Open API: 소행성 데이터, 허블 망원경 사진.
- SpaceX API: 발사, 로켓, 드래곤 우주선 정보.
- Open Notify: ISS의 현재 위치, 우주에 있는 사람 수.