6์žฅ

128p

๋„๋ฉ”์ธ ๊ฐ์ฒด์˜ ๊ด€๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋Š” ์•„๋ž˜์˜ ๋‘ ๊ฐ€์ง€ ๋ฒ”์ฃผ๋กœ ๋‚˜๋‰œ๋‹ค.

  1. ์ƒ๋ช…์ฃผ๊ธฐ ๋™์•ˆ์˜ ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€ํ•˜๊ธฐ

  2. ์ƒ๋ช…์ฃผ๊ธฐ ๊ด€๋ฆฌ์˜ ๋ณต์žก์„ฑ์œผ๋กœ ๋ชจ๋ธ์ด ๋‚œํ•ดํ•ด์ง€๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ

๋ณธ ์žฅ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ์„ธ ๊ฐ€์ง€ ํŒจํ„ด์„ ์ด์šฉํ•ด ํ•ด๊ฒฐํ•˜๊ฒ ๋‹ค.

  • Aggregate๋Š” ์†Œ์œ ๊ถŒ๊ณผ ๊ฒฝ๊ณ„๋ฅผ ๋ช…ํ™•ํžˆ ์ •์˜ํ•จ์œผ๋กœ์จ ๋ชจ๋ธ์„ ์—„๊ฒฉํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ๊ฐ์ฒด ๊ฐ„์˜ ์—ฐ๊ด€๊ด€๊ณ„๊ฐ€ ํ˜ผ๋ž€์Šค๋Ÿฝ๊ฒŒ ์–ฝํžˆ์ง€ ์•Š๊ฒŒ ํ•œ๋‹ค.

  • Factory๋Š” ๋ณต์žกํ•œ ๊ฐ์ฒด์™€ Aggregate๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žฌ๊ตฌ์„ฑํ•จ์œผ๋กœ์จ ๊ทธ๊ฒƒ๋“ค์˜ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ์บก์Аํ™”ํ•œ๋‹ค.

  • Repository๋Š” ๊ฑฐ๋Œ€ํ•œ ๊ด€๋ จ ์ธํ”„๋ผ์ŠคํŠธ๋Ÿญ์ฒ˜๋ฅผ ์บก์Аํ™”ํ•˜๋ฉด์„œ ์˜์† ๊ฐ์ฒด๋ฅผ ์ฐพ์•„ ์กฐํšŒํ•˜๋Š” ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•œ๋‹ค.

133p

ENTITY์™€ VALUE OBJECT๋ฅผ AGGREGATE๋กœ ๋ชจ์œผ๊ณ  ๊ฐ๊ฐ์— ๋Œ€ํ•ด ๊ฒฝ๊ณ„๋ฅผ ์ •์˜ํ•˜๋ผ. ํ•œ ENTITY๋ฅผ ๊ณจ๋ผ AGGREGATE์˜ ๋ฃจํŠธ๋กœ ๋งŒ๋“ค๊ณ  AGGREGATE ๊ฒฝ๊ณ„ ๋‚ด๋ถ€์˜ ๊ฐ์ฒด์— ๋Œ€ํ•ด์„œ๋Š” ๋ฃจํŠธ๋ฅผ ๊ฑฐ์ณ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋ผ. AGGREGATE ๋ฐ–์˜ ๊ฐ์ฒด๋Š” ๋ฃจํŠธ๋งŒ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋ผ.

142p

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

157p

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

์‹ค์งˆ์ ์œผ๋กœ ์ง์ ‘ ์ ‘๊ทผํ•ด์•ผํ•˜๋Š” AGGREGATE์˜ ๋ฃจํŠธ์— ๋Œ€ํ•ด์„œ๋งŒ REPOSITORY๋ฅผ ์ œ๊ณตํ•˜๊ณ , ๋ชจ๋“  ๊ฐ์ฒด ์ €์žฅ๊ณผ ์ ‘๊ทผ์€ REPOSITORY์— ์œ„์ž„ํ•ด์„œ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ชจ๋ธ์— ์ง‘์ค‘ํ•˜๊ฒŒ ํ•˜๋ผ.

Last updated