๋ ผ๋ฆฌ ํ๋ก๊ทธ๋๋ฐ ๋๋ ์ ์ฝ ๋ ผ๋ฆฌ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ๋ ํ๋ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ์ฒด์ ๊ฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ง์ ํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ค์ ์ ๋๋ ๊ณ์ฐ ํจ๋ฌ๋ค์์ ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฃผ๋ก ๋ฌธ์ ํด๊ฒฐ์ ์ํ ์ผ๋ จ์ ๋จ๊ณ ์คํ์ ์ค์ ์ ๋๋ ์ ์ฐจ์ ๋๋ ๊ธฐ๋ฅ์ ํ๋ก๊ทธ๋๋ฐ๊ณผ ๊ฐ์ ๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์๊ณผ ๋ค๋ฆ ๋๋ค. ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์์๋ ์ํฐํฐ ๊ฐ์ ์ ์ง๋๋ ๊ด๊ณ ๋๋ ์ ์ฝ ์กฐ๊ฑด(๋ ผ๋ฆฌ์ , ์ํ์ ๋ฑ)์ ์ ์ํ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค. ๋ชฉํ๋ ์ํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ด๋ฌํ ๊ด๊ณ๋ก๋ถํฐ ์ ๋ณด๋ฅผ ์ถ๋ก ํ๊ฑฐ๋ ์ถ๋ก ํ๋ ๊ฒ์ ๋๋ค.
ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ๋งฅ๋ฝ์์ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ์ ์ธ์ ์คํ์ผ์ ์ฑํํฉ๋๋ค. ์ฆ, ํ๋ก๊ทธ๋๋จธ๋ ๋ช ์์ ์ธ ์ ์ด ํ๋ฆ ๊ตฌ์ฑ์ด๋ ๋จ๊ณ๋ณ ์ง์นจ์ ์ง์ ํ์ง ์๊ณ ํด๊ฒฐํด์ผ ํ ๋ฌธ์ ๋ฅผ ์ค๋ช ํฉ๋๋ค. ์ด๋ฌํ ๋์ ์์ค์ ์ถ์ํ ๋ฐ ํํ๋ ฅ์ ํตํด ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ๋ณต์กํ ๋ฌธ์ ๋ฅผ ๊ฐ๊ฒฐํ๊ณ ์ฐ์ํ๊ฒ ๋ชจ๋ธ๋งํ ์ ์์ต๋๋ค. ๋ฌธ์ ์ ์์ ์ค์ ์๋ฃจ์ ์์ฑ์ ๋ถ๋ฆฌํจ์ผ๋ก์จ ํต์ผ๋๊ณ ํฌ๊ด์ ์ธ ๋ฐฉ์์ผ๋ก ์๋ฃจ์ ์ ์ถ๋ก , ์ต์ ํ ๋ฐ ๊ฒ์ฆ์ด ๊ฐ๋ฅํฉ๋๋ค.
๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ค ํ๋๋ ํ์ ๋ ผ๋ฆฌ์ ํตํฉ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ Prolog์ ๋๋ค. Prolog๋ Horn ์ ์ ํํ๋ก ํํ๋ ์ผ๋ จ์ ๊ท์น๊ณผ ์ฌ์ค์ ํ์ฉํ์ฌ ๊ด๊ณ๋ฅผ ๋ชจ๋ธ๋งํ๊ณ ์ถ๋ก ํฉ๋๋ค. ์ด๋ฌํ ํํ๋ ฅ์ ํตํด ๊ธฐํธ ๊ณ์ฐ, ์์ฐ์ด ์ฒ๋ฆฌ, ์ง์ ํํ, ์ถ๋ก ๋ฑ ๋ณต์กํ ์์ ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ๋ค๋ฅธ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก๋ Mercury, Oz ๋ฐ CHR(Constraint Handling Rules)์ด ์์ต๋๋ค.
๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ๋ถ์์ ํ๊ฑฐ๋ ๋ถํ์คํ ์ ๋ณด, ๋ณต์กํ ์ถ๋ก ๋ฐ ์ง์ ํํ์ด ํ์ํ ๋ฌธ์ , ๊ด๊ณ ํํ์ ๋ํ ์์ฐ์ค๋ฌ์ด ์ฑํฅ์ด โโ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋ค์ํ ์ด์ ์ ์ ๊ณตํฉ๋๋ค. ๊ทธ ์ด์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ํํ์ฑ: ๊ฐ๋ ฅํ ์ถ์ํ ๋ฐ ์ ์ธ์ ๊ตฌ๋ฌธ์ ํตํด ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ์ฌ์ฉํ๋ฉด ๋ณต์กํ ๋ฌธ์ , ๊ท์น ๋ฐ ๊ด๊ณ๋ฅผ ๊ฐ๊ฒฐํ๊ณ ์ฐ์ํ๊ฒ ์ธ์ฝ๋ฉํ ์ ์์ต๋๋ค.
- ๋ชจ๋์ฑ ๋ฐ ์ฌ์ฌ์ฉ์ฑ: ๋ฌธ์ ์ ์์ ๊ตฌํ์ ๋ถ๋ฆฌํ๋ฉด ๊ณตํต ํจํด๊ณผ ๊ด๊ณ๋ฅผ ์ ์ํ๊ณ ๋ค์ํ ๋ฌธ์ ์์ญ์์ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ๋ชจ๋์ฑ๊ณผ ๋ ๋์ ์์ค์ ์ฌ์ฌ์ฉ์ด ๊ฐ๋ฅํฉ๋๋ค.
- ์ถ๋ก ๋ฐ ์ถ๋ก : ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด, ํนํ ๋ ผ๋ฆฌ ๊ธฐ๋ฐ ์ธ์ด๋ ๋ถ์์ ํ๊ฑฐ๋ ๋ถ๋ถ์ ์ผ๋ก ์๋ ค์ง ์ ๋ณด๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ๋ฌธ์ ํด๊ฒฐ์ ์ฉ์ดํ๊ฒ ํ๋ ๊ฐ๋ ฅํ ์ถ๋ก ๋ฐ ์ถ๋ก ๋ฉ์ปค๋์ฆ์ ์ง์ํฉ๋๋ค.
- ์ต์ ํ: ์ ์ธ์ ๋ฌธ์ ๊ณต์ํ๋ ์ข ์ข ์ต์ ํ๋ฅผ ํตํด ๋ณด๋ค ํจ์จ์ ์ด๊ณ ํจ๊ณผ์ ์ธ ์๋ฃจ์ ๊ตฌ์ถ์ ๊ฐ๋ฅํ๊ฒ ํ๊ณ , ๋ฆฌ์์ค ์ฌ์ฉ์ ์ต์ํํ๊ฑฐ๋ ์ํ๋ ๊ธฐ์ค์ ์ต๋ํํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์๋ ํน์ ๊ณผ์ ์ ์ ํ ์ฌํญ๋ ์์ต๋๋ค. ํ ๊ฐ์ง ์ฃผ๋ชฉํ ๋งํ ๋จ์ ์ ์ฃผ๋ก ๊ฒ์, ์ถ๋ก ๋ฐ ์ถ๋ก ๋ฉ์ปค๋์ฆ๊ณผ ๊ด๋ จ๋ ์ค๋ฒํค๋๋ก ์ธํด ์ ์ฐจ์ ๋๋ ๊ธฐ๋ฅ์ ํจ๋ฌ๋ค์์ ๋นํด ์ฑ๋ฅ์ด ๋จ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค๋ ๊ฒ์ ๋๋ค. ์ผ๋ถ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ๋ช ๋ นํ ๋๋ ์ํ ์ ์ฅ ๊ตฌ๋ฌธ์ ๋ํ ์ง์์ด ์ ํ ๋์ด ํน์ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ฉ์ธ์ ์ ํฉํ์ง ์๊ฑฐ๋ ๊ณตํต ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ํ์ํ ์๋ ์์ต๋๋ค.
์ด๋ฌํ ๊ณผ์ ์๋ ๋ถ๊ตฌํ๊ณ ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐํธ ๊ณ์ฐ, ์ธ๊ณต ์ง๋ฅ, ์ง์ ํํ, ๊ณํ, ์ ์ฝ ์กฐ๊ฑด ํด๊ฒฐ, ์ ๋ฆฌ ์ฆ๋ช ๋ฑ ๋ค์ํ ๋ถ์ผ์์ ์ฑ๊ณต์ ์ผ๋ก ์ ์ฉ๋์์ต๋๋ค. ๋ํ, ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ๊ณผ ๊ฐ์ฒด ์งํฅ, ๊ธฐ๋ฅ ๊ธฐ๋ฐ ํ๋ก๊ทธ๋๋ฐ, ์ ์ฝ ๊ธฐ๋ฐ ํ๋ก๊ทธ๋๋ฐ๊ณผ ๊ฐ์ ๋ค๋ฅธ ํจ๋ฌ๋ค์์ ๊ฒฐํฉํ ํ์ด๋ธ๋ฆฌ๋ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ด ๋ฑ์ฅํ์ฌ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ณ ์ ์ฉ ๊ฐ๋ฅ์ฑ์ ๋ํ์ต๋๋ค.
๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ์ํ ๊ฐ๋ ฅํ no-code ํ๋ซํผ์ธ AppMaster ์๊ฐ์ ์ผ๋ก ์ค๊ณ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ, ๋น์ฆ๋์ค ํ๋ก์ธ์ค, API ๋ฐ WSS endpoints ํตํด ์ ์ํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ๋น์ฉ ํจ์จ์ ์ธ ๊ฐ๋ฐ์ ์ด์งํฉ๋๋ค. ์๋ฒ ์ค์ฌ ์ ๊ทผ ๋ฐฉ์, ๊ธฐ์ ์คํ ๋ฐ ์๋ํฌ์๋ ์๋ฃจ์ ์์ฑ ๊ธฐ๋ฅ์ ํตํด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํ ํฌ๊ด์ ์ธ ํ๋ซํผ์ด ๋ฉ๋๋ค. ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ AppMaster ์ ํต์ฌ ์ด์ ์ ์๋์ง๋ง ํ๋ซํผ์์ ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ Postgresql๊ณผ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ ์์ฉํ๊ณ ๊ธฐ์กด ๊ด๊ณํ ๋ชจ๋ธ, ๊ท์น ๋ฐ ์ ์ฝ ์กฐ๊ฑด์ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๋ชจ๋ธ๋ง, ์ ์ฅ ๋ฐ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด AppMaster ๊ธฐ์กด ๊ด๊ณํ ๋ชจ๋ธ๊ณผ ์ํํ๊ฒ ์๋ํ๊ณ ์์ฑ๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํตํด ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ์ฅ์ ์ ์์ํ์ฌ ๊ด๋ฒ์ํ ๊ณ ๊ฐ ์๊ตฌ์ ๋ง๋ ์ ์ฐํ๊ณ ํ์ฅ ๊ฐ๋ฅํ ์๋ฃจ์ ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ์ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ์ ๋ํ ๋ชจ๋ธ๋ง ๋ฐ ์ถ๋ก ์ ์ด์ ์ ๋ง์ถ ๊ฐ๋ ฅํ๊ณ ํํ๋ ฅ์ด ํ๋ถํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ๋๋ค. ์ ์ธ์ ์ฑ๊ฒฉ, ์ถ์ํ ๊ธฐ๋ฅ, ๋ด์ฅ๋ ์ถ๋ก ๋ฐ ์ถ๋ก ์ง์ ๋๋ถ์ ๋ณต์กํ ์ง์ ํํ, ์กฐ์, ์ถ๋ก ์ ํด๊ฒฐํด์ผ ํ๋ ๋ฌธ์ ์ ํนํ ์ ํฉํฉ๋๋ค. ๊ด๊ณํ ํ๋ก๊ทธ๋๋ฐ๊ณผ ๋ค๋ฅธ ํจ๋ฌ๋ค์์ ๊ฒฐํฉ ๋ฐ AppMaster ์ ๊ฐ์ ํ๋ซํผ๊ณผ์ ํตํฉ์ ๋ค์ํ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ์๊ตฌ ์ฌํญ์ ๋ํ ๋ค์ํ๊ณ ํฌ๊ด์ ์ธ ์๋ฃจ์ ์ ๋ณด์ฅํฉ๋๋ค.