API ์๋ช ์ฃผ๊ธฐ๋ API(์์ฉ ํ๋ก๊ทธ๋๋ฐ ์ธํฐํ์ด์ค)๊ฐ ์กด์ฌํ๋ ๋์ ๊ฑฐ์น๋ ์ผ๋ จ์ ๋จ๊ณ๋ฅผ ๋ํ๋ ๋๋ค. ์ด๋ ๊ฐ๋ ๊ตฌ์๋ถํฐ ์ค๊ณ, ๊ฐ๋ฐ, ํ ์คํธ, ๋ฐฐํฌ, ์ง์์ ์ธ ๊ด๋ฆฌ, ๋ชจ๋ํฐ๋ง, ๋ฒ์ ๊ด๋ฆฌ์ ์ด๋ฅด๋ ์ ์ฒด ํ๋ก์ธ์ค๋ฅผ ํฌ๊ดํฉ๋๋ค. ์ด ํฌ๊ด์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ํธ ์ด์ฉ์ฑ์ ์ด์งํ๊ณ , ๋ณต์ก์ฑ์ ๊ด๋ฆฌํ๋ ๋ฐ ๋์์ ์ฃผ๋ฉฐ, API๊ฐ ์๋ช ์ ๋ฐ์ ๊ฑธ์ณ ์์ ํ๊ณ ๊ธฐ๋ฅ์ ์ผ๋ก ์ ์ง๋๋๋ก ๋ณด์ฅํฉ๋๋ค.
API๋ ๋ค์ํ ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ํต์ ์ ์ฉ์ดํ๊ฒ ํ์ฌ ๊ด๋ฒ์ํ ์ฝ๋ฉ ์์ด๋ ๋ฐ์ดํฐ์ ๊ธฐ๋ฅ์ ๊ณต์ ํ ์ ์๋๋ก ํด์ค๋๋ค. API์ ์๋ช ์ฃผ๊ธฐ ๊ด๋ฆฌ๋ ๋ค์ํ ์์คํ ๊ณผ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ํจ์จ์ ์ด๊ณ ์์ ์ ์ด๋ฉฐ ์์ ํ ํตํฉ์ ๋ณด์ฅํ์ฌ ๊ฐ๋ฐ์๊ฐ ์ํํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๋ ๋์์ ํ๋ซํผ์ ์ฑ์ฅ์ ์ ์งํ ์ ์๋๋ก ํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
1. ๊ณํ ๋ฐ ์ค๊ณ: API ์๋ช ์ฃผ๊ธฐ๋ API์ ๋ชฉ์ ๊ณผ ๋ชฉํ๋ฅผ ์๋ณํ๋ ๊ฒ๋ถํฐ ์์๋ฉ๋๋ค. ์ด ํ๋ก์ธ์ค์๋ ๋ด๋ถ ๋ฐ ์ธ๋ถ ์ฌ์ฉ์๋ฅผ ๋ชจ๋ ํฌํจํ ๋์ ๊ณ ๊ฐ์ ์ ์ํ๊ณ ์ํ๋ ๊ธฐ๋ฅ๊ณผ ์ญ๋์ ์ค์ ํ๋ ์์ ์ด ํฌํจ๋ฉ๋๋ค. ๋ํ ๊ฐ๋ฐ์๋ ์ด ๋จ๊ณ์์ ์์ฐ, ๊ธฐ๊ฐ, ๋ฆฌ์์ค ๋ฑ์ ์ ์ฝ ์กฐ๊ฑด์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. API ์๊ตฌ ์ฌํญ์ ๋ช ํํ๊ฒ ์ดํดํ๋ฉด ๊ฐ๋ฐ์๋ ๊ฐ ์๋ํฌ์ธํธ, ๋ฐ์ดํฐ ๊ตฌ์กฐ ๋ฐ ํ๋กํ ์ฝ์ ์ธ๋ถ ์ฌํญ์ ์ค๋ช ํ๋ ํฌ๊ด์ ์ธ ๋์์ธ์ ๋ง๋ค ์ ์์ต๋๋ค. ์ค์ ์ฝ๋ฉ ์ ์ API ์ค๊ณ๊ฐ ์ด๋ฃจ์ด์ง๋ API ์ฐ์ ์ ๊ทผ ๋ฐฉ์์ ์๋น์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ ๊ฑธ์ณ ์ผ๊ด์ฑ, ์ ์ง ๊ด๋ฆฌ ์ฉ์ด์ฑ ๋ฐ ์ฌ์ฌ์ฉ์ฑ์ ์ด์งํฉ๋๋ค.
2. ๊ฐ๋ฐ: ์ค๊ณ๊ฐ ์๋ฃ๋๋ฉด ๊ฐ๋ฐ์๋ ๋ ผ๋ฆฌ ๊ตฌํ์ ์์ํ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๋ฉฐ API๊ฐ ์๋ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋์ง ํ์ธํฉ๋๋ค. ํ๋ ์์ํฌ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ธ์ด ์ ํ๊ณผ ๊ฐ์ ๊ธฐ์ ์คํ์ ์ ํ์ ์ด ๋จ๊ณ์์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด AppMaster Go๋ฅผ ์ฌ์ฉํ๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ , Vue3 ํ๋ ์์ํฌ(JS/TS)๋ฅผ ์ฌ์ฉํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ , Android์ฉ Kotlin ๋ฐ Jetpack Compose ์ iOS์ฉ SwiftUI ์ฌ์ฉํ๋ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํฉ๋๋ค.
3. ํ ์คํธ ๋ฐ ๊ฒ์ฆ: API์ ๋ํ ์๊ฒฉํ ํ ์คํธ๋ API์ ๊ฒฌ๊ณ ์ฑ, ๋ณด์ ๋ฐ ํจ์จ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ์ค์ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ๋จ์ ํ ์คํธ, ํตํฉ ํ ์คํธ, ๋ณด์ ํ ์คํธ ๋ฐ ์ฑ๋ฅ ํ ์คํธ์ ๊ฐ์ ๊ธฐ๋ฅ ๋ฐ ๋น๊ธฐ๋ฅ ํ ์คํธ ๊ธฐ์ ์ ๋ชจ๋ ์ฌ์ฉํฉ๋๋ค. ๊ฐ๋ฐ์๊ฐ ์ค์ ๊ตฌํ ์ ์ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์์ฑํ๋ TDD(ํ ์คํธ ์ค์ฌ ๊ฐ๋ฐ) ๋ฐฉ๋ฒ๋ก ๋ ์ฑํ๋ ์ ์์ต๋๋ค. ์ด ๋จ๊ณ์์๋ Swagger(OpenAPI)์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ API๋ฅผ ์ฒ ์ ํ๊ฒ ๋ฌธ์ํํด์ผ ํฉ๋๋ค.
4. ๋ฐฐํฌ: ์ฑ๊ณต์ ์ธ ํ ์คํธ ๋ฐ ๊ฒ์ฆ ํ API๋ ์คํ ์ด์ง ๋๋ ํ๋ก๋์ ํ๊ฒฝ์ ๋ฐฐํฌ๋ฉ๋๋ค. ๋ฐฐํฌ ์ ์ฐจ๋ ์ธํ๋ผ, ํธ์คํ , ํน์ ๊ธฐ์ ์คํ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์๋ฅผ ๋ค์ด AppMaster ํ๋ซํผ์ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ Docker ์ปจํ ์ด๋๋ก ์๋ ํจํค์งํ๊ณ ํด๋ผ์ฐ๋์ ๋ฐฐํฌํ์ฌ ๋ฐฐํฌ๋ฅผ ๊ฐ์ํํฉ๋๋ค.
5. ๋ชจ๋ํฐ๋ง ๋ฐ ๊ด๋ฆฌ: ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์๋ณํ๊ณ ํ์ง์ ๋ณด์ฅํ๋ฉฐ ํฅํ ๋ฐ๋ณต์ ๊ฐ์ ํ๋ ๋ฐ ๋์์ด ๋๋ ํต์ฐฐ๋ ฅ์ ์ป์ผ๋ ค๋ฉด API ์ฌ์ฉ, ์ฑ๋ฅ ๋ฐ ๋ณด์์ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์๋ต ์๊ฐ, ์ค๋ฅ์จ, ๋ฆฌ์์ค ์ฌ์ฉ๋, API ์ฑํ๋ฅ ๊ณผ ๊ฐ์ ์งํ๋ ์ ๋ณด์ ์ ๊ฐํ ์์ฌ ๊ฒฐ์ ๊ณผ ์ง์์ ์ธ API ๊ด๋ฆฌ์ ํ์์ ์ ๋๋ค. ์ฌ์ ๋ชจ๋ํฐ๋ง์ ๊ฐ๋ ์ค์ง ์๊ฐ์ ๋ฐฉ์งํ๊ณ , ๋ณด์ ์๋ฐ์ ๊ฐ์งํ๋ฉฐ, ๊ฐ๋ฐ์๊ฐ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ์๋ณํ๊ณ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
6. ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ๋ฐ์ : API๋ ๋ณํํ๋ ์๊ตฌ ์ฌํญ, ์๋ก์ด ๊ธฐ์ ๋ฐ ์ฌ์ฉ์ ํผ๋๋ฐฑ์ ์์ฉํ ์ ์๋๋ก ๋ฐ์ ํด์ผ ํฉ๋๋ค. ๋ฒ์ ๊ด๋ฆฌ๋ ๊ฐ๋ฐ์๊ฐ ๊ธฐ์กด ์๋น์ค๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ฅ์ ์ค๋จํ์ง ์๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์ ํ๊ณ , ์ฑ๋ฅ์ ํฅ์ํ๊ณ , ๋ฒ๊ทธ๋ฅผ ์์ ํ ์ ์๋๋ก ํด์ฃผ๊ธฐ ๋๋ฌธ์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์ ์ ์๋ ๋ฒ์ ๊ด๋ฆฌ ์ ๋ต์ ์ค์ํ๋ฉด ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํ๊ณ ๊ธฐ์กด ์ฌ์ฉ์์๊ฒ ๋ฏธ์น๋ ์ํฅ์ ์ต์ํํ๋ ๋์์ ์๋ก์ด ํฅ์๋ ๊ธฐ๋ฅ์ ์ํํ๊ฒ ํตํฉํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก ํจ๊ณผ์ ์ธ API ์๋ช ์ฃผ๊ธฐ ๊ด๋ฆฌ๋ ์๋น์ค์ ์ํํ ํตํฉ, ์ต์ ์ ์ฌ์ฉ์ ๊ฒฝํ, ์์คํ ์ฑ๋ฅ ๋ฐ ํ๋ซํผ ํ์ฅ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค. AppMaster ํ๋ซํผ์ API ์ค๊ณ, ๊ฐ๋ฐ, ํ ์คํธ, ๋ฐฐํฌ ๋ฐ ๋ชจ๋ํฐ๋ง์ ์ํ ํฌ๊ด์ ์ธ no-code ์๋ฃจ์ ์ ์ ๊ณตํ์ฌ ๋น ๋ฅด๊ณ ํจ์จ์ ์ธ API ๊ฐ๋ฐ์ ์ด์งํฉ๋๋ค. ์๊ฐ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง, ๋น์ฆ๋์ค ํ๋ก์ธ์ค ์ค๊ณ, ์๋ํ๋ ๋ฌธ์ํ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น ๋ฅด๊ฒ ์ฌ์์ฑํ๋ ๊ธฐ๋ฅ์ ํตํด AppMaster ํ๋ซํผ์ ๊ฐ๋ฐ์๊ฐ ์ต์ ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฑ๊ณต์ ์ค์ํ ํ์ฅ ๊ฐ๋ฅํ๊ณ ๋น์ฉ ํจ์จ์ ์ด๋ฉฐ ์ฑ๋ฅ์ด ๋ฐ์ด๋ API๋ฅผ ๊ตฌ์ถํ๊ณ ์ ์งํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. .