์๋ ํ์ธ์ ํ๋ก ํธ์๋ 14๊ธฐ ์ฌ๋ฌ๋ถ! ํํธ์ฅ์ ๋๋ค.
์ด๋๋ง ์ฝ ๋๋ฌ๊ฐ์ ํ๋ก ํธ์๋ ์คํฐ๋์ ๋ง์ง๋ง๊น์ง ๋ฌ๋ ค์ค๊ฒ ๋์์ต๋๋ค. ๊ทธ๋์ ์ฌ๋ฌ๋ถ๋ค์๊ฒ ๊ฐ์ธ์ ์ธ ์ฑ์ฅ์ด ์์๊ธธ ๋ฐ๋ผ๋ ๋ง์์ ๋๋ค. ์ด๋ฒ ์คํฐ๋๋ ๋ฐฑ์๋์ ํจ๊ป ์งํํ๊ฒ ๋ฉ๋๋ค. ๋ชจ๋ ์น์์, REST API๊ฐ ์ฃผ๋ฅ๋ก ๋ ์ค๋ฆ์ ๋ฐ๋ผ, ํ๋ก ํธ์๋์ ๋ฐฑ์๋์ ๊ตฌ๋ถ์ด ์ด์ ๋ณด๋ค ๋งค์ฐ ๋ช ํํด์ก์ต๋๋ค. ์ฃผ๋ก ๋ฐฑ์๋๋ API ์๋ฒ์ ์ญํ ์, ํ๋ก ํธ์๋๋ ์ด๋ฅผ ์ด์ฉํด ์ฌ์ฉ์์๊ฒ UI๋ฅผ ์ ๊ณตํ๋ ์ญํ ๋ก ์น์ด ๋ถํ๋์์ต๋๋ค. ๊ทธ ๋ง์ ๊ณง, API ์์ด๋ ์ฌ์ฉ์์๊ฒ ์๋ฏธ์๋ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ ํ๋ค์ด ์ง๊ฒ ์ฃ . ์ฌ๋ฌ๋ถ๊ป์๋ ์ฐจํ ํ์์ ํ๋ก์ ํธ๋ฅผ ์งํํ์๊ฒ ๋๋ฉด์ ํ ๋ด์ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ค๊ณผ API์ ๋ํด ์ํตํ์๊ฒ ๋ ์ผ์ด ๋ง์์ง ๊ฒ์ ๋๋ค.
์ด๋ฒ ๊ณผ์ ๋ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ค์ด ์ ๋ฌํด์ค API๋ฅผ ์ฌ์ฉํด ๋ณด๋๊ฒ ์ ๋๋ค! ์ผ์ข ์ ํฌํ ์๋น์ค๋ฅผ ๊ฐ๋ฐํด ๋ณด๋ ๊ฒ์ธ๋ฐ์, ์ด ํฌํ ๊ฒฐ๊ณผ๊ฐ ์ค์ ํํธ์ฅ ํฌํ๋ก ์ด์ด์ง์๋... ์๋์๋,... ๋ฐฑ์๋ ๊ฐ๋ฐ์์ ํจ๊ป, ๊ธฐํ ์๋์ ๋ฐ๋ผ ํด๋ผ์ด์ธํธ ์ฌ์ด๋์์ API๋ฅผ ์กฐ๊ธ ๋ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ณ ๋ฏผํด๋ณด๊ณ , ๋ ผ์ํด๋ณด๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
๋ํ ์ด๋ฒ ๊ณผ์ ๋ ํ ๋จ์๋ก ์งํํ๊ฒ ๋๋๋ฐ์, ํ ๋ด์ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ ๋ฌผ๋ก ์ด๊ณ , ๊ฐ์ ํ ๋ด์ ํ๋ก ํธ์๋ ํ์ ํ๊ฒ ๋๋ ์ด๋ฒ ๊ณผ์ ์์, ์ด๋ป๊ฒ ํ๋ฉด ์ค์ ํ๋ก๋ํธ ๊ฐ๋ฐ์์ ์ญํ ๋ถ๋ด์ ํจ์จ์ ์ผ๋ก ํ ์ ์์์ง์ ๋ํด์ ๊ธฐ๋ฐ์ ๋ค์ง ์ ์๋ ๊ณ๊ธฐ๊ฐ ๋๊ธธ ๋ฐ๋๋๋ค!
- REST API, AJAX๋ฑ์ ํตํ ์๋ฒ์์ ํต์ ๋ฐฉ๋ฒ์ ์ดํดํฉ๋๋ค
- async/await, Promise๋ฑ JavaScript ๋ด์ ์์ ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ์ดํดํฉ๋๋ค
- API document๋ฅผ ํตํด ๋ฐฑ์๋ ๊ฐ๋ฐ์์ ์ํตํ๋ ๋ฐฉ๋ฒ์ ์ตํ๋๋ค
- ํ ๋ด์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์์ ์ ์ ํ ์ญํ ๋ถ๋ด์ ํตํด ๊ฐ๋ฐ ํจ์จ์ ๋์ด๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ณ ๋ฏผํฉ๋๋ค
์ด๋ฒ ๋ฏธ์ ์ ์ถ์ ๊ณผ์ ๊ณต๊ฐ ํ 2์ฃผ ํ ์ ๋๋ค (2021๋ 12์ 3์ผ) ๋ค๋ง ์ํ๊ธฐ๊ฐ์ ๊ณ ๋ คํ์ฌ ์คํฐ๋๋ ์ํ๊ธฐ๊ฐ์ด ๋๋ ์ดํ๋ก ์์ ๋์ด์์ต๋๋ค. ๋ฐ๋ผ์ ๊ณผ์ ์ ์ถ ๊ธฐ๊ฐ ์ดํ๋ก ์์ ๋กญ๊ฒ ์์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
- ์ฌ์ดํธ๋ฅผ ์ฌ๋ฌ๋ถ๋ง์ ๊ฐ๊ฐ์ผ๋ก ๊พธ๋ฉฐ๋ณด์ธ์. (UI/UX์ ๋ํ ์ฌ๋ฌ๋ถ์ ๊ฐ๊ฐ์ ์ต๋ํ ๋ฐํํด์ฃผ์๊ธฐ ๋ฐ๋๋๋ค)
- HTTPS๋ฅผ ํตํด ์๋ฒ์ ํต์ ํ์ธ์
- ์ธ์ ์ฌํญ์ ๊ธฐํ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ์ธ์
- API Fetch๋ ์ด๋ค ๋ฐฉ์์ ์ฌ์ฉํ๋ ๋ฌด๋ฐฉํฉ๋๋ค (axios, Fetch API, $.ajax)
Promise.then()๋ณด๋จasync/await๋ฅผ ์ฌ์ฉํด ๋ณด์ธ์. ๋ ์ต์ ์คํ์ด๋๋๋ค.