LUCATHREE.COM

← Back to list
🧐 TIL

[DDD] 도메인 주도 μ„€κ³„λž€?

μž‘μ„±μΌ:
TILDDDArchitecture

DDD

DDDλŠ” Domain Driven Design의 μ•½μžλ‘œ ν•œκ΅­μ–΄λ‘œλŠ” 도메인 주도 섀계라고 λΆ€λ₯Έλ‹€.

그럼 도메인은 무엇인가?

도메인은 β€˜μ˜μ—­β€™μ΄λΌλŠ” 뜻으둜 ν”„λ‘œκ·Έλž˜λ°μ—μ„œλŠ” ν”„λ‘œκ·Έλž¨μ΄ μ“°μ΄λŠ” λŒ€μƒ λΆ„μ•Όλ₯Ό μ˜λ―Έν•œλ‹€.
도메인이 μ™œ μ€‘μš”ν•œμ§€λ₯Ό μ΄ν•΄ν•˜λ €λ©΄ μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ— λŒ€ν•œ μ •μ˜λΆ€ν„° λ‹€μ‹œ ν•΄μ•Όν•˜λŠ”λ°, <도메인 주도 섀계 μ² μ € μž…λ¬Έ>μ—μ„œλŠ” μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ„ 이용자의 문제λ₯Ό μ •ν™•ν•˜κ²Œ μ΄ν•΄ν•˜κ³  그것을 ν•΄κ²°ν•  수 μžˆλŠ” μ΅œμ„ μ˜ μˆ˜λ‹¨μ„ κ΅¬ν˜„ν•˜λŠ” κ²ƒμœΌλ‘œ μ†Œκ°œν•œλ‹€.
이용자의 문제λ₯Ό μ •ν™•ν•˜κ²Œ μ΄ν•΄ν•œλ‹€λŠ” 것은 κ³§ μ΄μš©μžκ°€ μ ‘ν•˜λŠ” ν™˜κ²½μ— λŒ€ν•œ 지식을 μŒ“λŠ”λ‹€λŠ” 것이고, μ½”λ“œλŠ” μœ μš©ν•œ 지식을 잘 정리해놓은 λ¬Έμ„œμ™€λ„ κ°™λ‹€.
이런 κ΄€μ μ—μ„œ 봀을 λ•Œ 도메인 주도 μ„€κ³„λŠ” μ†Œν”„νŠΈμ›¨μ–΄κ°€ μ‚¬μš©λ  λΆ„μ•Όμ˜ 지식에 μ΄ˆμ μ„ λ§žμΆ”κ³  ν•΄λ‹Ή 뢄야에 μ†ν•˜λŠ” κ°œλ…κ³Ό 사건듀 쀑 문제 해결에 μœ μš©ν•œ 뢀뢄듀을 μΆ”μƒν™”ν•˜μ—¬ μ†Œν”„νŠΈμ›¨μ–΄μ— λ°˜μ˜ν•˜λŠ” 방법이라고 정리할 수 μžˆλ‹€.

도메인 λͺ¨λΈκ³Ό 도메인 객체

ν”„λ‘œκ·Έλž˜λ°μ—μ„œ λͺ¨λΈμ€ ν˜„μ‹€μ˜ μ‚¬κ±΄μ΄λ‚˜ κ°œλ…μ„ μΆ”μƒν™”ν•œ 것을 λ§ν•œλ‹€.
좔상은 ν˜„μ‹€ κ°œλ…μ—μ„œ κ³΅ν†΅μ μ΄λ‚˜ νŠΉμ„±μ„ 뽑아 νŒŒμ•…ν•˜λŠ” κ²ƒμœΌλ‘œ ν˜„μ‹€μ˜ λͺ¨λ“  것을 λ°˜μ˜ν•˜λŠ” 것이 μ•„λ‹ˆλ‹€. 즉, 좔상을, λͺ¨λΈλ§μ„ 잘 ν•˜κΈ° μœ„ν•΄μ„œλŠ” 도메인 κ°œλ… μ€‘μ—μ„œλ„ λΆˆν•„μš”ν•œ 것은 μ œμ™Έμ‹œν‚€κ³  문제 해결을 μœ„ν•΄ ν•„μš”ν•œ 것이 무엇인지 νŒŒμ•…ν•  수 μžˆλŠ” 것이 μ€‘μš”ν•˜λ‹€.
그리고 이런 좔상화 된 도메인 λͺ¨λΈμ„ λ™μž‘ν•˜λŠ” λͺ¨λ“ˆλ‘œ κ΅¬ν˜„ν•΄μ€˜μ•Ό ν•˜λŠ”λ° μ΄λ•Œ κ΅¬ν˜„ν•˜λŠ” 것이 도메인 객체닀.
ν•œνŽΈ ν˜„μ‹€μ˜ μ„Έκ³„λŠ” 항상 같은 μƒνƒœλ‘œλ§Œ μ‘΄μž¬ν•˜μ§€ μ•Šκ³  늘 λ³€ν™”κ°€ μƒκΈ°λŠ”λ° 이런 λ³€ν™”κ°€ λͺ¨λΈμ„ 톡해 도메인 객체에도 반영이 λ˜μ–΄μ•Ό ν•œλ‹€.
Β