API First Design
API First Design
ํ๋ก ํธ์๋์ ๋ฐฑ์๋๊ฐ API ์ค๊ณ๋ฅผ ๊ฐ์ฅ ๋จผ์ ํจ๊ป ์งํํ๊ณ , ํด๋น API๋ฅผ ์ค์ฌ์ผ๋ก ์์คํ ์ ๊ตฌ์ถํด ๋๊ฐ๋ ๊ฐ๋ฐ ๋ฐฉ์
API First Design์ ๋จ์ํ API๋ฅผ ๋จผ์ ๋ง๋ ๋ค๋ ์๋ฏธ๋ฅผ ๋์ด์, โAPI๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์ ์ ๊ธฐ์ค๊ณผ ํ๋ฆ์ ๋ง์ถ๋ ๊ฐ๋ฐ ๋ฌธํโ ์ ๊ฐ๊น์
์ผ๋ฐ์ ์ธ ์๋น์ค ๊ฐ๋ฐ ํ๋ฆ์์์ ๋ฌธ์
๊ธฐ์กด ์๋น์ค ๊ฐ๋ฐ ๋ฐฉ์์ ๋ค์๊ณผ ๊ฐ์ ํ๋ฆ์ ๋ฐ๋ฆ
๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๊ธฐํ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก API๋ฅผ ์ค๊ณํจ
๋ฐฑ์๋๋ API ์ค๊ณ๊ณผ์ ์์ ๋ง์ ๊ณ ๋ฏผ ํ์
ํ๋ก ํธ์๋๋ ๋ฐฑ์๋์ API ์ค๊ณ๊ฐ ๋๋ ๋๊น์ง ๋๊ธฐํ๊ฒ ๋จ.
API๊ฐ ์ ๋ฌ๋์์ง๋ง, ์ค์ ํ๋ฉด ๊ตฌํ ๊ณผ์ ์์ ๋ถ๋ช ํํ๊ฑฐ๋ ๋๋ฝ๋ ๋ถ๋ถ์ด ๋๋ฌ๋จ
๊ทธ ๊ฒฐ๊ณผ ๋ค์ ๋ฐฑ์๋์ ์์ ํ์ โ ์ฌ์์ โ ๋ฐ๋ณต, ์ปค๋ฎค๋์ผ์ด์ ๋น์ฉ ์ฆ๊ฐ
๋ง๋ค์ด์ง API๋ฅผ ํ๋ก ํธ์๋๊ฐ ์ ๋ฌ ๋ฐ์ ์ด๋ป๊ฒ API๋ฅผ ๋งคํํ๊ณ ํ์ฉํ ์ง ๊ณ ๋ฏผ ํ ์ค๊ณ
ํ๋ก ํธ์๋๋ ๋ช ์ธ์ ๋ง์ง ์๊ฑฐ๋ ๋ถ์กฑํ ๋ฐ์ดํฐ๋ฅผ ์ง์ง๊ธฐํ๊ฑฐ๋ ๊ฐ๊ณตํ๋ฉด์ ๊ฐ๋ฐ์ ์งํํ๊ฒ ๋จ
์๊ฐ์ด ์ง๋ ์๋ก ํ๋ก ํธ์ ๋ฐฑ์๋๋ ์๋ก ๋ค๋ฅธ ๋งฅ๋ฝ ์์์ ๊ฐ๋ฐ์ ์ด์ด๊ฐ๊ฒ ๋๊ณ , ์ ์ง๋ณด์๋ ์ ์ ์ด๋ ค์์ง
์ด๋ฌํ ๋ฌธ์ ๋ค์ ์ค์ด๊ธฐ ์ํ ํด๊ฒฐ์ฑ ์ด API First Design
์ฅ์
๋ณ๋ ฌ ๊ฐ๋ฐ ๊ฐ๋ฅ: ๋ฐฑ์๋๊ฐ API๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ ์๋, ํ๋ก ํธ๋ Mock API ๊ธฐ๋ฐ์ผ๋ก ์์ ์ ์์ํ ์ ์์
์ปค๋ฎค๋์ผ์ด์ ํจ์จํ: ์ด๊ธฐ ์ค๊ณ๋ฅผ ํจ๊ป ํ๋ฏ๋ก ์ดํ ๋ถํ์ํ ํ์๊ฐ ์ค์ด๋ฆ
ํจ๊ป ๋ง๋ค๊ฒ๋๋ ๊ธฐ์ค์ด ์๊ธฐ๊ณ ์๊ฐ์ ์๋์ ์๊ฒ๋จ
ํ๋ก ํธ์๋ ์์ฐ์ฑ ํฅ์: ์ค์ ํ๋ฉด ํ๋ฆ์ ๋ง์ถ API ์ค๊ณ๋ก ์ถ๊ฐ ๊ฐ๊ณต ์์ด ๋ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
์ฃผ์ํ ์
์ฒ์๋ถํฐ ์๋ฒฝํ API๋ฅผ ์ค๊ณํ๊ธฐ๋ ์ด๋ ค์. ์ค๋ฌด์์๋ ๋ณ๊ฒฝ์ด ์ฆ๊ธฐ ๋๋ฌธ์, API๋ ์ ์ฐํ๊ฒ ์ ์งํด์ผ ํจ
API ๋ช ์ธ ๋ณ๊ฒฝ ์ ์๋ ๋ฐ์ ์ฒด๊ณ ํ์. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ฌธ์์ ์ค์ ์ฝ๋๊ฐ ์ด๊ธ๋ ์ ์์
OpenAPI
RESTful API๋ฅผ ์ ์ํ๊ธฐ ์ํ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์คํ ์ค ํ๋.
Swagger: OpenAPI ๊ธฐ๋ฐ์ผ๋ก API ๋ช ์ธ์๋ฅผ ์๊ฐํํ๊ณ ํ ์คํธํ ์ ์๋ ๋๊ตฌ
openapi-generator:
OpenAPI ๋ช ์ธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์ API ํด๋ผ์ด์ธํธ ์ฝ๋, ํ์ , ๋ฌธ์ ๋ฑ์ ์๋ ์์ฑ
๋ณ๊ฒฝ์ฌํญ์ด ๋ฐ์๋๋ฉด ์ฝ๋๋ ์๋์ผ๋ก ์ ๋ฐ์ดํธ๋๋ฏ๋ก ์์ฐ์ฑ๊ณผ ์ผ๊ด์ฑ ํ๋ณด ๊ฐ๋ฅ
Last updated