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

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

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

AppMaster ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์›ํ™œํ•œ ๋ฐฐํฌ๋ฅผ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ”Œ๋žซํผ์—๋Š” Go(golang)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, Vue3 ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ JS/TS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์„œ๋ฒ„ ์ค‘์‹ฌ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. Android์šฉ Kotlin ๋ฐ Jetpack Compose ์™€ IOS์šฉ SwiftUI ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ์ตœ์†Œํ•œ์˜ ๋…ธ๋ ฅ๊ณผ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ์„ ์ค„์ด๋ฉด์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹ ์†ํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

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

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

์š”์•ฝํ•˜์ž๋ฉด, ๋ฐฐํฌ ํ™˜๊ฒฝ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ์˜ ์ค‘์š”ํ•œ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. AppMaster ์˜ ๊ฐ•๋ ฅํ•œ no-code ํ”Œ๋žซํผ์€ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ๊ฐ„์†Œํ™”ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๋Š” ์ตœ์†Œํ•œ์˜ ๋…ธ๋ ฅ์œผ๋กœ ๊ฐ•๋ ฅํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹ ์†ํ•˜๊ฒŒ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค์˜ ์ฃผ์š” ์ธก๋ฉด์„ ์ž๋™ํ™”ํ•˜๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ๋ฏผ์ฒฉํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ด‰์ง„ํ•จ์œผ๋กœ์จ AppMaster ํ˜„๋Œ€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํŒ€์˜ ๋‹ค์–‘ํ•˜๊ณ  ์ง„ํ™”ํ•˜๋Š” ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ํฌ๊ด„์ ์ธ ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.