๋๋ฉ์ธ(Domain-Driven Design) ์ด๋ฏธ ๋ชจ๋๊ฐ ์๊ณ ์์ง๋ง ์๋ฒฝํ ์ดํดํ๊ณ ์ ์ํ๊ธฐ๋ ์ฝ์ง ์๊ธฐ์ ํ ๊ฐ์ง ์๋ฅผ ๋ค์ด๋ณด์. ์จ๋ผ์ธ ์ผํ๋ชฐ์ ๋ง๋ ๋ค๊ณ ๊ฐ์ ํ๋ค๋ฉด, ์ํ์ ์ฃผ๋ฌธํ๋ ํ์์ด ์์ด์ผํ๊ณ ์ฃผ๋ฌธ ์์คํ
, ์ํ ๋ฑ๋ก ๋ฐ ๊ด๋ฆฌ ์กฐํ, ์ํ ๋ฐฐ์ก, ๊ฒฐ์ ๋ฑ์ ๊ธฐ๋ฅ์ด ์ ๊ณต๋์ด์ผ ํ๋ค. ์ด ๋, '์จ๋ผ์ธ ์ผํ๋ชฐ' ์ ๋ฌธ์ ์์ญ์ธ ์ต์์ ๋๋ฉ์ธ์ ํด๋น๋๊ณ , ์ด๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๊ณผ์ ๋ฑ์ ๋๋ฉ์ธ ์ง์(Domain Knowledge)๋ค์ ์์ ๋๋ฉ์ธ์ ํด๋น๋๋ค. ์์๋๋ฉ์ธ ํ์ ๋๋ฉ์ธ์ ์์ ๋๋ฉ์ธ์ ์ด๋ฃจ์ด์ง๊ฒํ๋ ํ์ ๊ตฌ์ฑ์ฒด์ด๋ค. ํ์๋๋ฉ์ธ ํ์: ํ์์ ๋ณด ์ํ: ๊ณต๊ธ์ฒ, ํ๋งค์ฒ, ์ํ ์ ๋ณด ์ฃผ๋ฌธ: ์ฃผ๋ฌธ ์ํ์ ๋ณด, ์ฃผ๋ฌธํ ํ์, ๋ฐฐ์ก์ง ... ๊ฒฐ์ : ๊ฒฐ์ ์ ๋ณด ๋ฐฐ์ก: ๋ฐฐ์ก์ง, ๋ฐฐ์ก๋ฒํธ, ๋ฐฐ์ก์ ๋ณด....
DDD ๋?
๋๋ฉ์ธ(Domain-Driven Design) ์ด๋ฏธ ๋ชจ๋๊ฐ ์๊ณ ์์ง๋ง ์๋ฒฝํ ์ดํดํ๊ณ ์ ์ํ๊ธฐ๋ ์ฝ์ง ์๊ธฐ์ ํ ๊ฐ์ง ์๋ฅผ ๋ค์ด๋ณด์. ์จ๋ผ์ธ ์ผํ๋ชฐ์ ๋ง๋ ๋ค๊ณ ๊ฐ์ ํ๋ค๋ฉด, ์ํ์ ์ฃผ๋ฌธํ๋ ํ์์ด ์์ด์ผํ๊ณ ์ฃผ๋ฌธ ์์คํ
, ์ํ ๋ฑ๋ก ๋ฐ ๊ด๋ฆฌ ์กฐํ, ์ํ ๋ฐฐ์ก, ๊ฒฐ์ ๋ฑ์ ๊ธฐ๋ฅ์ด ์ ๊ณต๋์ด์ผ ํ๋ค. ์ด ๋, '์จ๋ผ์ธ ์ผํ๋ชฐ' ์ ๋ฌธ์ ์์ญ์ธ ์ต์์ ๋๋ฉ์ธ์ ํด๋น๋๊ณ , ์ด๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๊ณผ์ ๋ฑ์ ๋๋ฉ์ธ ์ง์(Domain Knowledge)๋ค์ ์์ ๋๋ฉ์ธ์ ํด๋น๋๋ค. ์์๋๋ฉ์ธ ํ์ ๋๋ฉ์ธ์ ์์ ๋๋ฉ์ธ์ ์ด๋ฃจ์ด์ง๊ฒํ๋ ํ์ ๊ตฌ์ฑ์ฒด์ด๋ค. ํ์๋๋ฉ์ธ ํ์: ํ์์ ๋ณด ์ํ: ๊ณต๊ธ์ฒ, ํ๋งค์ฒ, ์ํ ์ ๋ณด ์ฃผ๋ฌธ: ์ฃผ๋ฌธ ์ํ์ ๋ณด, ์ฃผ๋ฌธํ ํ์, ๋ฐฐ์ก์ง ... ๊ฒฐ์ : ๊ฒฐ์ ์ ๋ณด ๋ฐฐ์ก: ๋ฐฐ์ก์ง, ๋ฐฐ์ก๋ฒํธ, ๋ฐฐ์ก์ ๋ณด....
2023.07.25