Home
>
CS
>
2024
>
๐พ [CS] API(Application Programming Interface)
CS
๐พ [CS] API(Application Programming Interface)
-
API(Application Programming Interface) ๋ ์ํํธ์จ์ด ๊ฐ์ ์ํธ์์ฉ์ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋ ์ธํฐํ์ด์ค์
๋๋ค.
- ์ฝ๊ฒ ๋งํด์ , API๋ ์๋ก ๋ค๋ฅธ ์ํํธ์จ์ด ์์คํ
์ด๋ ์ ํ๋ฆฌ์ผ์ด์
์ด ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ฑฐ๋ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ฃผ๋ ๊ท์น๊ณผ ๋๊ตฌ๋ค์ ์งํฉ์
๋๋ค.
1๏ธโฃ API์ ์ฃผ์ ๊ฐ๋
.
-
1. ์ธํฐํ์ด์ค
- API๋ ์ํํธ์จ์ด ์์คํ
์ด ๋ค๋ฅธ ์์คํ
์ด๋ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ์ด๋ป๊ฒ ์ํตํ ์ ์๋์ง๋ฅผ ์ ์ํ๋ ์ธํฐํ์ด์ค์
๋๋ค.
- ์ด ์ธํฐํ์ด์ค๋ ์ด๋ค ๋ฐ์ดํฐ๋ ๊ธฐ๋ฅ์ด ๋
ธ์ถ๋๊ณ , ๊ทธ๊ฒ๋ค์ ์ด๋ป๊ฒ ์ฌ์ฉํ ์ ์๋์ง ๊ท์ ํฉ๋๋ค.
-
2. ์ถ์ํ
- API๋ ๋ณต์กํ ์์คํ
๋ด๋ถ์ ๊ตฌํ ์ธ๋ถ ์ฌํญ์ ์จ๊ธฐ๊ณ , ์ฌ์ฉ์๋ ๊ฐ๋ฐ์๊ฐ ์ดํดํ๊ธฐ ์ฝ๊ฒ ํ์ํ ๊ธฐ๋ฅ๋ง์ ์ ๊ณตํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, ํ์ผ์ ์ด๊ฑฐ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฟผ๋ฆฌ๋ฅผ ๋ณด๋ด๊ฑฐ๋, ์น ํ์ด์ง์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฑ์ ์์
์ API๋ฅผ ํตํด ๊ฐ๋จํ๊ฒ ์ํํ ์ ์์ต๋๋ค.
-
3. ๋ชจ๋ํ
- API๋ ํน์ ๊ธฐ๋ฅ์ด๋ ์๋น์ค์ ๋ํ ์ ๊ทผ์ ๋ชจ๋ํํฉ๋๋ค.
- ์ด๋ ๊ฒ ๋ชจ๋ํ๋ API๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์์คํ
์ ๋ค๋ฅธ ๋ถ๋ถ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋
๋ฆฝ์ ์ผ๋ก ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ฑฐ๋ ํ์ฅํ ์ ์์ต๋๋ค.
-
4. ํ์คํ
- API๋ ํ์คํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ธฐ๋ฅ์ ์ ๊ทผํ ์ ์๊ฒ ํด์ฃผ๊ธฐ ๋๋ฌธ์, ์ฌ๋ฌ ๊ฐ๋ฐ์๋ ์์คํ
์ด ์ผ๊ด๋ ๋ฐฉ์์ผ๋ก ์ํธ์์ฉํ ์ ์์ต๋๋ค.
- ์๋ฅผ ๋ค์ด, REST API๋ ์น ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ์ค ๋ฐฉ์์
๋๋ค.
2๏ธโฃ API์ ์ ํ.
-
1. Web API(์น API)
- ์น ์๋น์ค๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ API์
๋๋ค.
- ์ฃผ๋ก HTTP๋ฅผ ํตํด ์์ฒญ๊ณผ ์๋ต์ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, REST, SOAP, GraphQL ๋ฑ์ด ๊ทธ ์์
๋๋ค.
-
2. Library API
- ํน์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉํ ์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ์ ํจ์์ ํด๋์ค๋ค์ ๋ํ ์ธํฐํ์ด์ค์
๋๋ค.
- ์๋ฅผ ๋ค์ด, Python์ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ๊ณตํ๋
os
๋ sys
๋ชจ๋๋ API์ ์ผ์ข
์
๋๋ค.
-
3. Operating System API
- ์ด์ ์ฒด์ ๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ ์ ๊ทผํ ์ ์๊ฒ ํด์ฃผ๋ API์
๋๋ค.
- ์๋ฅผ ๋ค์ด, Windows API๋ ์๋์ฐ ์ ํ๋ฆฌ์ผ์ด์
์ด ์ด์ ์ฒด์ ์ ๊ธฐ๋ฅ(ํ์ผ ๊ด๋ฆฌ, UI ๊ตฌ์ฑ ์์, ๋คํธ์ํฌ ๋ฑ)์ ์ ๊ทผํ ์ ์๋๋ก ํฉ๋๋ค.
-
4. Database API
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ํธ์์ฉ์ ์ํด ์ ๊ณต๋๋ API์
๋๋ค.
- JDBC(Java Database Connectivity)๋ ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉํ ์ ์๋๋ก ๋๋ ๋ํ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค API์
๋๋ค.
3๏ธโฃ API์ ์.
-
Google Maps API
- ๊ฐ๋ฐ์๊ฐ ์์ ์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ง๋ ๊ธฐ๋ฅ์ ํตํฉํ ์ ์๋๋ก Google์์ ์ ๊ณตํ๋ API์
๋๋ค.
-
Twitter API
- ๊ฐ๋ฐ์๊ฐ ํธ์ํฐ์ ๊ธฐ๋ฅ(์: ํธ์ ๊ฐ์ ธ์ค๊ธฐ, ํธ์ ์์ฑ)์ ์์ ์ ์ ํ๋ฆฌ์ผ์ด์
์ ํตํฉํ ์ ์๋๋ก ์ ๊ณต๋๋ API์
๋๋ค.
-
Payment Gateway API
- PayPal์ด๋ Stripe ๊ฐ์ ๊ฒฐ์ ์๋น์ค์์ ์ ๊ณตํ๋ API๋ก, ์ ํ๋ฆฌ๊ฒ์ด์
์ ๊ฒฐ์ ๊ธฐ๋ฅ์ ํตํฉํ ์ ์์ต๋๋ค.
4๏ธโฃ API์ ์ค์์ฑ.
- API๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ๋งค์ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
- ๊ทธ๊ฒ์ ์ํํธ์จ์ด ๊ฐ์ ์ํธ ์ด์ฉ์ฑ์ ์ด์งํ๋ฉฐ, ์๋ก์ด ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ๊ฑฐ๋ ๊ธฐ์กด ์ ํ๋ฆฌ์ผ์ด์
์ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ๊ฒ์ ๋ ์ฝ๊ฒ ๋ง๋ค์ด ์ค๋๋ค.
- ๋ํ, API๋ฅผ ํตํด ์ธ๋ถ ์์คํ
์ด๋ ์๋น์ค์ ํตํฉํ ์ ์์ด, ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ๊ฐ๋ฐํ ์ ์์ต๋๋ค.