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

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

์ตœ์‹  ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์‹œ๋Œ€์— ์ž๋™ํ™” ๋ฐ CI/CD(์ง€์†์  ํ†ตํ•ฉ/์ง€์†์  ๋ฐฐํฌ) ๋ฐฉ์‹์€ ํ”„๋ŸฐํŠธ์—”๋“œ ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค์˜ ์†๋„๋ฅผ ๋†’์ด๊ณ  ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” Webpack, Babel, Grunt, Gulp ๋ฐ npm๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ๋„๊ตฌ์™€ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋ŸฐํŠธ์—”๋“œ ์ž์‚ฐ ๊ตฌ์ถ•, ํ…Œ์ŠคํŠธ ๋ฐ ์ตœ์ ํ™” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค. Amazon S3, Google Cloud Storage, Microsoft Azure, Netlify์™€ ๊ฐ™์€ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด๋Š” ํŠธ๋ž˜ํ”ฝ ๊ธ‰์ฆ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•œ ์›ํ™œํ•œ ๋ฐฐํฌ ๋ฐ ํ™•์žฅ ์˜ต์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

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

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

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

ํ”„๋ŸฐํŠธ์—”๋“œ ๋ฐฐํฌ ์™ธ์—๋„ AppMaster ์„œ๋ฒ„ endpoints ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์Šคํฌ๋ฆฝํŠธ์— ๋Œ€ํ•œ Swagger(๊ฐœ๋ฐฉํ˜• API) ๋ฌธ์„œ๋ฅผ ํฌํ•จํ•œ ํฌ๊ด„์ ์ธ ๋ฌธ์„œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ชจ๋“  PostgreSQL ํ˜ธํ™˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์ง€์›ํ•˜์—ฌ ์ผ๊ด€๋œ ๊ณ ์„ฑ๋Šฅ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๋ฐ ์ €์žฅ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

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

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