๋ฐ์ดํฐ ๋ชจ๋ธ๋ง์ ๋งฅ๋ฝ์์ "ํ ์ด๋ธ"์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์์ ์ ๋ณด๋ฅผ ๊ตฌ์กฐํ๋๊ณ ํจ์จ์ ์ธ ๋ฐฉ์์ผ๋ก ๊ตฌ์ฑํ๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋๋ค. ํ ์ด๋ธ์ ์ฃผ์ ๊ธฐ๋ฅ์ ๋ ์ฝ๋(ํ)์ ์์ฑ(์ด)์ผ๋ก ๊ตฌ์ฑ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ค๋ฅธ ํ ์ด๋ธ์ ์ ์ฅ๋ ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ, ๊ฒ์ ๋ฐ ์กฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ ํ ์ด๋ธ์ ๋ค๋ฅธ ํ ์ด๋ธ๊ณผ ๊ตฌ๋ณํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ ํน์ ๋ฐ์ดํฐ์ ์ก์ธ์คํ๊ธฐ ์ํ ์ฐธ์กฐ ์ง์ ์ ์ ๊ณตํ๊ธฐ ์ํด ๊ณ ์ ํ ์ด๋ฆ์ ๊ฐ์ ธ์ผ ํฉ๋๋ค. ํ ์ด๋ธ์ ๊ฐ๊ฐ โโ์์ฑ์ด๋ ๋ฐ์ดํฐ ํ๋๋ฅผ ๋ํ๋ด๋ ์ด๊ณผ ๊ฐ๋ณ ๋ฐ์ดํฐ ํญ๋ชฉ์ ๋ํ๋ด๋ ๋ ์ฝ๋ ๋๋ ํํ๋ก ์๋ ค์ง ํ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ํ ์ด๋ธ์์ ํ๊ณผ ์ด์ ๊ต์ฐจ์ ์ ์ ์ด๋ผ๊ณ ๋ ํ๋ ๋จ์ผ ๋ฐ์ดํฐ ๊ฐ์ ๋ํ๋ ๋๋ค.
๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ์ํด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ์ ํน์ ์ค๊ณ ์์น๊ณผ ์ ๊ทํ ๊ท์น์ ์ค์ํฉ๋๋ค. ์ด๋ฌํ ๊ท์น์ ๋ฐ์ดํฐ ์ค๋ณต์ฑ์ ์ต์ํํ๊ณ ๋ฐ์ดํฐ ์กฐ์ ์์ ์ค ๋ฐ์ดํฐ ์ด์ ํ์์ ์ต์ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ํ ์ด๋ธ์ ํ์ ์๊ตฌ ์ฌํญ ์ค ํ๋๋ ํ ์ด๋ธ ๋ด์ ๊ฐ ๋ฐ์ดํฐ ํ์ ๋ํ ๊ณ ์ ์๋ณ์์ธ ๊ธฐ๋ณธ ํค๊ฐ ์์ด์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค. ๊ธฐ๋ณธ ํค๋ ํ ์ด๋ธ์ ๊ฐ ๋ ์ฝ๋๋ฅผ ๊ณ ์ ํ๊ฒ ์๋ณํ ์ ์๋๋ก ํ์ฌ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ์ก์ธ์ค ๋ฐ ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก, ์ธ๋ ํค๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ด๋ จ ํ ์ด๋ธ ๊ฐ์ ์ฐ๊ฒฐ์ ์ค์ ํ๋ ๋ฐ ์ฌ์ฉ๋์ด ๋ณต์กํ ๊ด๊ณ ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ ์กฐ๊ฑด ์์ฑ์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค.
AppMasterno-code ํ๋ซํผ์์ ๊ณ ๊ฐ์ ๋ด์ฅ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ์ผ๋ถ๋ก ๋ฐ์ดํฐ ๋ชจ๋ธ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง)์ ์๊ฐ์ ์ผ๋ก ์์ฑํ๊ณ ํ ์ด๋ธ, ์ด, ๋ฐ์ดํฐ ์ ํ, ๊ด๊ณ ๋ฐ ์ ์ฝ ์กฐ๊ฑด์ ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์๋๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ช ํํ๊ณ ๊ฐ๊ฒฐํ๊ฒ ํํํ ์ ์์ผ๋ฉฐ, ์ด๋ ํ์ํ ์์ค ์ฝ๋ ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๊ธฐ ์ํ ์ฒญ์ฌ์ง์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
AppMaster ํ๋ซํผ์์ ์ค๊ณ๋ ํ ์ด๋ธ์ ํ ์คํธ, ์ ์, ๋ถ๋ ์์์ , ๋ ์ง, ์๊ฐ, ์ด๊ฑฐํ ๊ฐ ๋ฑ ๋ค์ํ ๋ฐ์ดํฐ ์ ํ์ ์ง์ํ๋ฏ๋ก ์ฌ์ฉ์๋ ๊ด๋ฒ์ํ ์ ๋ณด๋ฅผ ๊ตฌ์กฐํ๋ ๋ฐฉ์์ผ๋ก ์ ์ฅํ๊ณ ๊ด๋ฆฌํ ์ ์์ต๋๋ค. ๋ํ ์ด ํ๋ซํผ์ ์ธ๋ฑ์ฑ ๋ฐ ์ฟผ๋ฆฌ ์ต์ ํ๋ฅผ ์ํ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๊ธฐ์ ๋ฐ ๊ณ ๋ถํ ์ฌ์ฉ ์ฌ๋ก์ ๋ํด ๋์ ์ฑ๋ฅ๊ณผ ํ์ฅ์ฑ์ ์ ์งํ๋ฉด์ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ๊ฒ์ ๋ฐ ์กฐ์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ๊ณ ๊ฐ, ์ฃผ๋ฌธ, ์ ํ ๋ฐ ์ ํ ๋ฒ์ฃผ์ ๋ํ ๋ฐ์ดํฐ ๋ชจ๋ธ(ํ ์ด๋ธ)์ด ํ์ํ ์ ์ ์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ฐํด ๋ณด์ญ์์ค. ์ด ์๋๋ฆฌ์ค์์๋ AppMaster ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ ํ ์ด๊ณผ ๋ฐ์ดํฐ ์ ํ์ผ๋ก ๊ด๋ จ ํ ์ด๋ธ์ ์์ฑํ ์ ์์ต๋๋ค. Customers ํ ์ด๋ธ์ CustomerID ๋ฐ Orders ํ ์ด๋ธ์ OrderID์ ๊ฐ์ด ๊ฐ ํ ์ด๋ธ์ ๋ํด ๊ธฐ๋ณธ ํค๊ฐ ์ ์๋ฉ๋๋ค. ์ธ๋ ํค๋ Orders ํ ์ด๋ธ์ ์ธ๋ ํค๋ก CustomerID๋ฅผ ์ฌ์ฉํ์ฌ ์ฃผ๋ฌธ๊ณผ ๊ณ ๊ฐ ๊ฐ์ ์ฐ๊ฒฐ๊ณผ ๊ฐ์ ํ ์ด๋ธ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ค์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๊ณ ํ ์ด๋ธ ์ฑ๋ฅ์ ์ต์ ํํ๊ธฐ ์ํด ์ ์ ํ ํ ์ด๋ธ ์ธ๋ฑ์ฑ, ์ ์ฝ ์กฐ๊ฑด ๋ฐ ์ ๊ทํ ๊ท์น์ด ์ ์ฉ๋ฉ๋๋ค.
๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ํ๋ก์ธ์ค๊ฐ ์๋ฃ๋๋ฉด AppMaster ํ๋ซํผ์ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง, ์๋ฒ ์ธก ๋น์ฆ๋์ค ๋ก์ง(๋น์ฆ๋์ค ํ๋ก์ธ์ค) ๋ฐ REST API endpoints ์ ๋ํ ํด๋น ์์ค ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ์์ฑ๋ ์์ค์ฝ๋๋ Go(golang)๋ก ์์ฑ๋์ด ๊ณ ์ฑ๋ฅ, ํ์ฅ์ฑ, Postgresql ํธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํธํ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ ๊ณ ๊ฐ์ ๋ฐ์ดํฐ ๋ชจ๋ธ ๋ฐ ๋ฐฑ์๋ ์๋น์ค์ ํจ๊ป ์๋ํ์ฌ ์ํํ๊ณ ํตํฉ๋ ๊ฐ๋ฐ ๊ฒฝํ์ ์ ๊ณตํ๋ AppMaster ์๊ฐ์ drag-and-drop UI ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ํํ ๋ฐ ๋ฐ์ํ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. AppMaster์์ ์์ฑ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ Vue3 ํ๋ ์์ํฌ์ JavaScript/TypeScript๋ฅผ ํ์ฉํ๋ ๋ฐ๋ฉด, ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ Android์ฉ Kotlin ๋ฐ Jetpack Compose ์ iOS์ฉ SwiftUI ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์๋ฒ ๊ธฐ๋ฐ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ ๋ฐ์ ์ผ๋ก AppMasterno-code ํ๋ซํผ ๋ด์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๋งฅ๋ฝ์์ ํ ์ด๋ธ์ ์น, ๋ชจ๋ฐ์ผ ๋ฐ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฑํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ตฌ์กฐํ๋๊ณ ํจ์จ์ ์ด๋ฉฐ ํ์ฅ ๊ฐ๋ฅํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์ด ํ๋ซํผ์ ์๋ ์ฝ๋ฉ์ ํ์์ฑ์ ์์ ๊ณ ๊ฐ๋ฐ ์๊ฐ๊ณผ ๋น์ฉ์ ์ ๊ฐํ๋ฉฐ ์ต๊ณ ์์ค์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ๋ณด์์ ๋ณด์ฅํ๋ ๋์์ ๊ณ ํ์ง ์ํํธ์จ์ด ์๋ฃจ์ ์ ์ ์ํ ๊ฐ๋ฐ ๋ฐ ๋ฐฐํฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.