AppMasterno-code ํ๋ซํผ ๋ด ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง์ ๋งฅ๋ฝ์์ ์ฐ๊ด์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์๋ ๋ ์ด์์ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ์๋ฏธํ๋ฉฐ, ๊ด๋ จ ์ํฐํฐ๊ฐ ์ํธ ์์ฉํ๊ณ ์ ๋ณด๋ฅผ ๊ณต์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ๋ ๋๋ค. ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง์ AppMaster ์ ํ์ ๊ธฐ๋ฅ์ผ๋ก, ์ฌ์ฉ์๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๊ณ ๋ฐ์ดํฐ ์ผ๊ด์ฑ๊ณผ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ฉฐ ์ ํ๋ฆฌ์ผ์ด์ ๋ด ๊ตฌ์ฑ ์์ ๊ฐ์ ์ํํ ์ํธ ์์ฉ์ ์ด์งํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ๋ชจ๋ธ๋ง์ ์ฐ๊ด์ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ๋ค์ํ ์ํฐํฐ๋ฅผ ์ฐ๊ฒฐํ์ฌ ์ ์ ํ ์ ๋ณด ํ๋ฆ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ์ ์ฐฉ์ ๋ก ์๊ฐํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ด๊ณ๋ ํ ์ํฐํฐ์ ๋จ์ผ ์ธ์คํด์ค๊ฐ ๋ค๋ฅธ ์ํฐํฐ์ ๋จ์ผ ์ธ์คํด์ค์ ์ฐ๊ฒฐ๋ ์ ์๋ ๋จ์ํ ์ผ๋์ผ ์ฐ๊ฒฐ๋ถํฐ ๋ ๊ฐ ์ด์์ ์ํฐํฐ์ ์ฌ๋ฌ ์ธ์คํด์ค๊ฐ ์ฐธ์กฐํ๋ ๋ณด๋ค ๋ณต์กํ ๋ค๋๋ค ์ฐ๊ฒฐ๊น์ง ๋ค์ํ ์ ์์ต๋๋ค. ์๋ก.
๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ํ๋ก์ธ์ค ์ค์ ์ ํํ๊ณ ์์ ํ ์ฐ๊ฒฐ์ ์์ฑํ๋ ๊ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋์ง ํ์ธํ๋ ๋ฐ ๊ทผ๋ณธ์ ์ธ ์ญํ ์ ํ๊ธฐ ๋๋ฌธ์ ์ค์ํฉ๋๋ค. ์ ์ ํ๊ฒ ์ ์๋ ์ฐ๊ฒฐ์ ๋ฐ์ดํฐ ๊ฒ์ ํจ์จ์ฑ์ ํฅ์์ํค๊ณ , ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ผ๊ด์ฑ์ ์ ์งํ๋ฉฐ, ์ ํ๋ฆฌ์ผ์ด์ ๋ ผ๋ฆฌ ๊ตฌํ์ ๋จ์ํํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
AppMaster ํ๋ซํผ ๋ด์ ๋ฐ์ดํฐ ๋ชจ๋ธ์์ ์ฐ๊ฒฐ์ ์์ฑํ๋ ค๋ฉด ์ฌ์ฉ์๋ ๋จผ์ ์ํฐํฐ์ ํด๋น ์์ฑ์ ์ ์ํด์ผ ํฉ๋๋ค. ์ํฐํฐ๋ ์ฌ์ฉ์, ์ ํ, ์ฃผ๋ฌธ ๋ฑ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ฉ์ธ์ ์ค์ํ ๊ฐ๋ ์ด๋ ๊ฐ์ฒด๋ฅผ ๋ํ๋ด๋ฉฐ, ์์ฑ์ ์ด๋ฆ, ์ค๋ช , ๊ฐ๊ฒฉ ๋ฑ ์ด๋ฌํ ์ํฐํฐ์ ํน์ ์์ฑ์ด๋ ํน์ฑ์ ์ ์ํฉ๋๋ค.
์ํฐํฐ์ ์์ฑ์ด ์ ์๋๋ฉด ์ฌ์ฉ์๋ ์นด๋๋๋ฆฌํฐ ๋ฐ ํ์ ๊ฐ๋ฅ์ฑ๊ณผ ํจ๊ป ๊ด๊ณ๋ฅผ ์ง์ ํ์ฌ ์ํฐํฐ์ ์์ฑ ๊ฐ์ ์ฐ๊ฒฐ์ ์์ฑํ ์ ์์ต๋๋ค. ์นด๋๋๋ฆฌํฐ๋ ์ผ๋์ผ, ์ผ๋๋ค, ๋ค๋๋ค ๋ฑ์ ์ผ๋ฐ์ ์ธ ์ ํ์ ์ฌ์ฉํ์ฌ ๊ด๊ณ์ ์ฐธ์ฌํ ์ ์๋ ์ธ์คํด์ค ์๋ฅผ ๋ํ๋ ๋๋ค. ํ์ ๊ฐ๋ฅ์ฑ์ ๊ด๊ณ์ ๋ฐฉํฅ์ฑ์ ๋ํ๋ด๋ฉฐ, ์ฐ๊ด์ ํตํด ๋ฐ์ดํฐ์ ์ก์ธ์คํ๊ณ ์กฐ์ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ฏธํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ๊ณ ๊ฐ, ์ฃผ๋ฌธ, ์ ํ์ ๋ํ๋ด๋ ์ํฐํฐ๊ฐ ์๋ ์ ์ ์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ฐํด ๋ณด์ธ์. ๊ณ ๊ฐ์ ์ฌ๋ฌ ์ฃผ๋ฌธ์ ํ ์ ์๊ณ , ์ฃผ๋ฌธ์ ์ฌ๋ฌ ์ ํ์ด ํฌํจ๋ ์ ์์ผ๋ฉฐ, ์ ํ์ด ์ฌ๋ฌ ์ฃผ๋ฌธ์ ์ผ๋ถ์ผ ์ ์์ต๋๋ค. ์ด ์๋๋ฆฌ์ค์์๋ ๊ณ ๊ฐ๊ณผ ์ฃผ๋ฌธ ์ํฐํฐ ๊ฐ์ ์ผ๋๋ค ์ฐ๊ฒฐ๊ณผ ์ฃผ๋ฌธ๊ณผ ์ ํ ์ํฐํฐ ๊ฐ์ ๋ค๋๋ค ์ฐ๊ฒฐ์ ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ฐ๊ฒฐ์ ๊ณ ๊ฐ, ์ฃผ๋ฌธ ๋ฐ ์ ํ ๊ฐ์ ๊ด๊ณ๋ฅผ ํจ์จ์ ์ผ๋ก ์ถ์ ํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ํ์ํ ์ ํ๋ฆฌ์ผ์ด์ ๋ ผ๋ฆฌ์ ํ์ํ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
AppMaster ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์๊ฐ์ ์ผ๋ก ์์ฑํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ํฌ๊ด์ ์ธ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ฏ๋ก ์ฌ์ฉ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ์ํฐํฐ, ์์ฑ ๋ฐ ์ฐ๊ฒฐ์ ์ฝ๊ฒ ์ ์ํ ์ ์์ต๋๋ค. ๋ํ AppMaster ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Go(golang), ์น ์ ํ๋ฆฌ์ผ์ด์ ์ฉ JS/TS๊ฐ ํฌํจ๋ Vue3 ํ๋ ์์ํฌ, ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Jetpack Compose ๋๋ SwiftUI ํฌํจ๋ Kotlin๊ณผ ๊ฐ์ ์ต์ฒจ๋จ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ์์ค ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ์ด๋ฅผ ํตํด AppMaster ์ฝ๋ ์์ฑ ๋ฐ ์ ์ง ๊ด๋ฆฌ์ ๋ณต์ก์ฑ์ ์๋์ผ๋ก ์ฒ๋ฆฌํ๋ฏ๋ก ๊ฐ๋ฐ์๋ ์ต์ํ์ ๋ ธ๋ ฅ์ผ๋ก ๊ฐ๋ ฅํ๊ณ ํ์ฅ ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
๋ํ AppMaster PostgreSQL ํธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ํํ ํตํฉ์ ์ง์ํ์ฌ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ก ์ฝ๊ฒ ๋ณํํ ์ ์๋๋ก ํ๊ณ ๊ธฐ์ ๋ฐ ๊ณ ๋ถํ ์ฌ์ฉ ์ฌ๋ก์ ๋ํ ์ต์ ์ ์ฑ๋ฅ๊ณผ ํ์ฅ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ๋ํ ํ๋ซํผ์ ์๋ฒ endpoints ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ์ ๋ํ Swagger(OpenAPI) ๋ฌธ์๋ฅผ ์๋์ผ๋ก ์์ฑํ๋ฏ๋ก ์๊ตฌ ์ฌํญ ๋ณ๊ฒฝ์ ๋ฐ๋ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ๊ด๋ฆฌํ๊ณ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ์ฐ๊ฒฐ์ ์ํฐํฐ ๊ฐ์ ํ์ํ ์ฐ๊ฒฐ์ ์ ๊ณตํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ ๊ฑธ์ณ ์ ๋ณด์ ๊ตฌ์ฑ, ๊ด๋ฆฌ ๋ฐ ํ๋ฆ์ ์ด์งํจ์ผ๋ก์จ AppMasterno-code ํ๋ซํผ ๋ด์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ํ๋ก์ธ์ค์์ ์ค์ถ์ ์ธ ์ญํ ์ ํฉ๋๋ค. ์ฌ์ฉ์๊ฐ ์ฐ๊ฒฐ์ ์๊ฐ์ ์ผ๋ก ์ ์, ๊ด๋ฆฌ ๋ฐ ์ ์งํ ์ ์๋๋ก ํจ์ผ๋ก์จ AppMaster ๊ด๋ฒ์ํ ์ฌ์ฉ ์ฌ๋ก์ ๋ํด ๊ฐ๋ ฅํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ํจ์จ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํ๊ณ ๊ฐ์ํํฉ๋๋ค.