RESTful ์๋น์ค ๋๋ ํํ ์ํ ์ ์ก ์๋น์ค๋ ํ์ฅ ๊ฐ๋ฅํ๊ณ ์ํ ๋น์ ์ฅ์ด๋ฉฐ ์ํธ ์ด์ฉ ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ์น ์๋น์ค๋ฅผ ์ค๊ณ, ๊ตฌํ ๋ฐ ์ํธ ์์ฉํ๋ ํ์คํ๋ ์ ๊ทผ ๋ฐฉ์์ ์ ์ํ๋ ์ผ๋ จ์ ์น ์ํคํ ์ฒ ์์น ๋ฐ ์ ์ฝ ์กฐ๊ฑด์ ๋๋ค. ์ด ์ฉ์ด๋ 2000๋ Roy Fielding์ ๋ฐ์ฌ ๋ ผ๋ฌธ์์ ์ฒ์ ๋ง๋ค์ด์ก์ต๋๋ค. HTTP ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ์ด๋ฌํ ์๋น์ค๋ ์ผ๋ฐ์ ์ผ๋ก ์ดํด๋๋ ํต์ ๋งค์ฒด๋ฅผ ํ์ฉํ๊ณ HTTP ๋์ฌ(GET, POST, PUT, DELETE)๋ฅผ ํ์ฉํ์ฌ CRUD(Create)๋ฅผ ์ํํฉ๋๋ค. , ์ฝ๊ธฐ, ์ ๋ฐ์ดํธ ๋ฐ ์ญ์ ) URL๋ก ๊ณ ์ ํ๊ฒ ์๋ณ๋๋ ๋ฆฌ์์ค์ ๋ํ ์์ ์ ๋๋ค.
REST์ ํต์ฌ ์์น ์ค ํ๋๋ ์ํ ๋น์ ์ฅ(Stateless)์ด๋ผ๋ ๊ฒ์ ๋๋ค. ์ด๋ ํด๋ผ์ด์ธํธ์์ ์๋ฒ๋ก์ ๊ฐ ์์ฒญ์๋ ์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ์๋ตํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ์ ๋ณด๊ฐ ํฌํจ๋์ด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ์๋ฒ๋ ์์ฒญ ์ฌ์ด์ ํด๋ผ์ด์ธํธ์ ํ์ฌ ์ํ์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ฅํ์ง ์์์ผ ์์คํ ์ ํ์ฅ์ฑ, ์ฑ๋ฅ ๋ฐ ์์ ์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
REST์ ๋ ๋ค๋ฅธ ๊ธฐ๋ณธ ์์น์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ๊ด์ฌ์ฌ๋ฅผ ๋ถ๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ํด๋ผ์ด์ธํธ๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ด๋นํ๊ณ , ์๋ฒ๋ ์์ฒญ ์ฒ๋ฆฌ, ๋ฆฌ์์ค ๊ด๋ฆฌ, ์ก์ธ์ค ์ ์ด ์ํ์ ๋ด๋นํฉ๋๋ค. ์ด๋ฌํ ๋ถ๋ฆฌ๋ฅผ ํตํด ์์คํ ์ ํด๋ผ์ด์ธํธ ๋ฐ ์๋ฒ ๊ตฌ์ฑ ์์ ๋ชจ๋๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ํ ์ ์์ต๋๋ค.
RESTful ์๋น์ค๋ ์ผ๋ฐ์ ์ผ๋ก JSON ๋๋ XML๊ณผ ๊ฐ์ ํ์ค ๋ฏธ๋์ด ์ ํ์ ์ฌ์ฉํ์ฌ ํํ๋๋ ๋ฆฌ์์ค์ ์ค์ ์ ๋๊ณ ์ค๊ณ๋ฉ๋๋ค. ๋ฆฌ์์ค ํํ์ ์๊ธฐ ์ค๋ช ์ ์ด์ด์ผ ํฉ๋๋ค. ์ฆ, ์ฌ์ฉ๋ ๋ฏธ๋์ด ์ ํ์ ๋ฆฌ์์ค ๊ฐ์ ๊ตฌ์กฐ, ์๋ฏธ ๋ฐ ๊ด๊ณ์ ๋ํ ์ถฉ๋ถํ ์ ๋ณด๋ฅผ ์ ๋ฌํด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ์ด๋ฅผ ํตํด ํด๋ผ์ด์ธํธ๋ ์ฌ์ ์ง์์ด๋ ๋์ญ ์ธ ๋ฌธ์์ ์์กดํ์ง ์๊ณ ๋ RESTful ์๋น์ค์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ์ดํดํ ์ ์์ต๋๋ค.
RESTful ์๋น์ค์ ๋ ๋ค๋ฅธ ์ค์ํ ์ธก๋ฉด์ HATEOAS(์ ํ๋ฆฌ์ผ์ด์ ์ํ ์์ง)๋ก ํ์ดํผ๋ฏธ๋์ด๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ ๋๋ค. ์ด ์์น์ ์๋ฒ์ ์๋ต์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๋ฟ๋ง ์๋๋ผ ํด๋ผ์ด์ธํธ๊ฐ ๊ด๋ จ ๋ฆฌ์์ค๋ฅผ ํ์ํ๊ณ ์ํธ ์์ฉํ๋ฉฐ ์์ ์ ์ํํ ์ ์๋๋ก ํ๋ ๋งํฌ์ ์ปจํธ๋กค๋ ํฌํจํด์ผ ํจ์ ๋ํ๋ ๋๋ค. HATEOAS๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋ผ์ด์ธํธ๋ ํ๋ ์ฝ๋ฉ๋ URL ๋ฐ ๋์ญ ์ธ ๋ฌธ์๊ฐ ํ์ํ์ง ์๊ณ RESTful ์๋น์ค์ ๊ธฐ๋ฅ๊ณผ ์ดํฌ๋์ค๋ฅผ ๋์ ์ผ๋ก ๊ฒ์ํ ์ ์์ต๋๋ค.
์ํํธ์จ์ด ์ํคํ ์ฒ ๋ฐ ํจํด์ ๋งฅ๋ฝ์์ RESTful ์๋น์ค๋ ๊ฐ๋ณ ๊ตฌ์ฑ ์์๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๊ฐ๋ฐ, ๋ฐฐํฌ ๋ฐ ํ์ฅํ ์ ์๋ ์ต์ ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ ์๋ฒ๋ฆฌ์ค ์ํคํ ์ฒ์ ์ ํฉํฉ๋๋ค. ๋ํ RESTful ์๋น์ค๋ ์น ๋ธ๋ผ์ฐ์ , ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ , ๊ธฐํ ์๋ฒ ๋ฑ ๋ค์ํ ํด๋ผ์ด์ธํธ์์ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์์ด ์ด๊ธฐ์ข ํ๊ฒฝ์์ ์ํธ ์ด์ฉ์ฑ์ ์ด์งํฉ๋๋ค.
AppMaster ์ ๊ฐ๋ ฅํ no-code ํ๋ซํผ์ ํตํด ๊ณ ๊ฐ์ ์๊ฐ์ BP Designer๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ผ๋ถ๋ก RESTful ์๋น์ค๋ฅผ ์ค๊ณํ๊ณ ๊ตฌํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์๋น์ค๋ฅผ ํตํฉํจ์ผ๋ก์จ ๊ณ ๊ฐ์ ์ต์ ์ํํธ์จ์ด ์์ง๋์ด๋ง์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๋ ํ์ฅ์ฑ์ด ๋ฐ์ด๋๊ณ ์ํ ๋น์ ์ฅ์ด๋ฉฐ ์ํธ ์ด์ฉ ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ๋ํ AppMaster ํ๋ซํผ์ ์ด๋ฌํ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ์์ค ์ฝ๋์ ์คํ ๊ฐ๋ฅํ ๋ฐ์ด๋๋ฆฌ ํ์ผ์ ์์ฑํ์ฌ ๊ฒฐ๊ณผ RESTful ์๋น์ค๊ฐ ํจ์จ์ ์ด๊ณ ์ฑ๋ฅ์ด ๋ฐ์ด๋๋๋ก ๋ณด์ฅํฉ๋๋ค.
์์ฝํ๋ฉด, RESTful ์๋น์ค๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ๋ฌธ์ ๋ถ๋ฆฌ๋ฅผ ์ด์งํ๊ณ ์์ฒด ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ฅ์ ๋์ ๊ฒ์์ ์ด์งํ๋ ํ์ฅ ๊ฐ๋ฅํ๊ณ ์ํ ๋น์ ์ฅ์ด๋ฉฐ ์ํธ ์ด์ฉ ๊ฐ๋ฅํ ์น ์๋น์ค๋ฅผ ์ค๊ณํ๊ณ ๊ตฌํํ๊ธฐ ์ํด ๋๋ฆฌ ์ฑํ๋๊ณ ๋๋ฆฌ ์ฑํ๋๋ ์์น ์ธํธ์ ๋๋ค. ์์ ์ ํํ๊ณผ ํ์ดํผ๋ฏธ๋์ด. ์ด๋ฌํ ์์น์ ๋ฐ๋ฅด๋ฉด ์ํํธ์จ์ด ์ค๊ณ์์ ๊ฐ๋ฐ์๋ ์ต์ ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ ์๋ฒ๋ฆฌ์ค ์ํคํ ์ฒ์ ์ ํฉํ ๊ณ ์ฑ๋ฅ ๋ฐ ์ ์ง ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. AppMaster ์ no-code ํ๋ซํผ์ ๊ณ ๊ฐ์ด ์ด ์ํคํ ์ฒ ์คํ์ผ์ ๊ฐ๋ ฅํจ๊ณผ ๋จ์์ฑ์ ํ์ฉํ์ฌ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ผ๋ถ๋ก RESTful ์๋น์ค๋ฅผ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์์ฑ ๋ฐ ๋ฐฐํฌํ ์ ์๋๋ก ์ง์ํฉ๋๋ค.