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

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

์ ์ ˆํ•œ ํ”„๋ŸฐํŠธ์—”๋“œ ์ž์‚ฐ ๊ด€๋ฆฌ์—๋Š” ๊ฐœ๋ฐœ, ์ตœ์ ํ™” ๋ฐ ๋ฐฐํฌ๋ผ๋Š” ์„ธ ๊ฐ€์ง€ ์ฃผ์š” ์˜์—ญ์œผ๋กœ ํฌ๊ฒŒ ๋ถ„๋ฅ˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ์ฃผ์š” ํ™œ๋™์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ

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

์ตœ์ ํ™”

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

์ „๊ฐœ

๋ฐฐํฌ์—๋Š” ํ”„๋ŸฐํŠธ์—”๋“œ ์ž์‚ฐ์„ ์ตœ์ข… ์‚ฌ์šฉ์ž์˜ ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์žฅ์น˜์— ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์œผ๋กœ ์ „๋‹ฌํ•˜๋Š” ์ž‘์—…์ด ์ˆ˜๋ฐ˜๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์ ์ ˆํ•œ ํ˜ธ์ŠคํŒ… ์†”๋ฃจ์…˜ ๋ฐ CDN ์„ ํƒ, ์บ์‹ฑ ์ „๋žต ์„ค์ •, ๋ฒ„์ „ ๊ด€๋ฆฌ, ์ตœ์ข… ์‚ฌ์šฉ์ž ์ค‘๋‹จ์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ์—…๋ฐ์ดํŠธ ์ฒ˜๋ฆฌ ๋“ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋ฐ”์ผ ์˜์—ญ์—์„œ๋Š” Android์šฉ Kotlin ๋ฐ Jetpack Compose ์™€ iOS์šฉ SwiftUI ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” AppMaster ์™€ ๊ฐ™์€ ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ UI ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ ์Šคํ† ์–ด์—์„œ ์ƒˆ ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œํ•˜์ง€ ์•Š๊ณ ๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ”„๋ŸฐํŠธ์—”๋“œ ์ž์‚ฐ์ด ๋”์šฑ ๊ฐ„์†Œํ™”๋ฉ๋‹ˆ๋‹ค. ๊ด€๋ฆฌ ๋ฐ ๋ฐฐํฌ.

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

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