๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ๋งฅ๋ฝ์—์„œ "ํ…Œ์ด๋ธ”"์€ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์—์„œ ์ •๋ณด๋ฅผ ๊ตฌ์กฐํ™”๋˜๊ณ  ํšจ์œจ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์˜ ์ฃผ์š” ๊ธฐ๋Šฅ์€ ๋ ˆ์ฝ”๋“œ(ํ–‰)์™€ ์†์„ฑ(์—ด)์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ๊ด€๊ณ„์™€ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ, ๊ฒ€์ƒ‰ ๋ฐ ์กฐ์ž‘ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ฐ ํ…Œ์ด๋ธ”์€ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”๊ณผ ๊ตฌ๋ณ„ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์˜ ํŠน์ • ๋ฐ์ดํ„ฐ์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•œ ์ฐธ์กฐ ์ง€์ ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์œ ํ•œ ์ด๋ฆ„์„ ๊ฐ€์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์€ ๊ฐ๊ฐ โ€‹โ€‹์†์„ฑ์ด๋‚˜ ๋ฐ์ดํ„ฐ ํ•„๋“œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์—ด๊ณผ ๊ฐœ๋ณ„ ๋ฐ์ดํ„ฐ ํ•ญ๋ชฉ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ ˆ์ฝ”๋“œ ๋˜๋Š” ํŠœํ”Œ๋กœ ์•Œ๋ ค์ง„ ํ–‰์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์—์„œ ํ–‰๊ณผ ์—ด์˜ ๊ต์ฐจ์ ์€ ์…€์ด๋ผ๊ณ ๋„ ํ•˜๋Š” ๋‹จ์ผ ๋ฐ์ดํ„ฐ ๊ฐ’์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ…Œ์ด๋ธ”์€ ํŠน์ • ์„ค๊ณ„ ์›์น™๊ณผ ์ •๊ทœํ™” ๊ทœ์น™์„ ์ค€์ˆ˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ทœ์น™์€ ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ฑ์„ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์ž‘์—… ์ค‘ ๋ฐ์ดํ„ฐ ์ด์ƒ ํ˜„์ƒ์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์˜ ํ•„์ˆ˜ ์š”๊ตฌ ์‚ฌํ•ญ ์ค‘ ํ•˜๋‚˜๋Š” ํ…Œ์ด๋ธ” ๋‚ด์˜ ๊ฐ ๋ฐ์ดํ„ฐ ํ–‰์— ๋Œ€ํ•œ ๊ณ ์œ  ์‹๋ณ„์ž์ธ ๊ธฐ๋ณธ ํ‚ค๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ํ‚ค๋Š” ํ…Œ์ด๋ธ”์˜ ๊ฐ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์—ฌ ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๋ฐ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ์™ธ๋ž˜ ํ‚ค๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ด€๋ จ ํ…Œ์ด๋ธ” ๊ฐ„์˜ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜์–ด ๋ณต์žกํ•œ ๊ด€๊ณ„ ๋ฐ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ ์กฐ๊ฑด ์ƒ์„ฑ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

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 ํ”Œ๋žซํผ ๋‚ด์˜ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ๋งฅ๋ฝ์—์„œ ํ…Œ์ด๋ธ”์€ ์›น, ๋ชจ๋ฐ”์ผ ๋ฐ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์กฐํ™”๋˜๊ณ  ํšจ์œจ์ ์ด๋ฉฐ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”Œ๋žซํผ์€ ์ˆ˜๋™ ์ฝ”๋”ฉ์˜ ํ•„์š”์„ฑ์„ ์—†์• ๊ณ  ๊ฐœ๋ฐœ ์‹œ๊ฐ„๊ณผ ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๋ฉฐ ์ตœ๊ณ  ์ˆ˜์ค€์˜ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ๊ณผ ๋ณด์•ˆ์„ ๋ณด์žฅํ•˜๋Š” ๋™์‹œ์— ๊ณ ํ’ˆ์งˆ ์†Œํ”„ํŠธ์›จ์–ด ์†”๋ฃจ์…˜์˜ ์‹ ์†ํ•œ ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.