์ž‘์—… ๋‹จ์œ„ ํŒจํ„ด์€ ์ง€์†์„ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ๊ตฌํ˜„, ํŠนํžˆ ํŠธ๋žœ์žญ์…˜ ๋ฐ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„ํ‚คํ…์ฒ˜์˜ ํ•„์ˆ˜ ์ธก๋ฉด์œผ๋กœ ๋„๋ฆฌ ์ธ์‹๋˜๊ณ  ์žˆ์œผ๋ฉฐ DDD(Domain-Driven Design) ๋ฐ ORM(Object-Relational Mapping)๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก ์—์„œ ์ƒ๋‹นํ•œ ๊ฒฌ์ธ๋ ฅ์„ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.

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

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

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

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

์ž‘์—… ๋‹จ์œ„ ํŒจํ„ด ๊ตฌํ˜„์—๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

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

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

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