Home - KEEMSY/shoes-ordering-system GitHub Wiki

Shose Ordering System

μ§„ν–‰ 쀑

Context



Decision



Consequence

λ‚΄λΆ€ μ•„ν‚€ν…μ²˜ 섀계


μ™ΈλΆ€ μ•„ν‚€ν…μ²˜ 섀계



μ†Œκ°œ

μ‹ λ°œ μ£Όλ¬Έ μ‹œμŠ€ν…œ ν”„λ‘œμ νŠΈμ˜ λͺ©ν‘œλŠ” 도메인 주도 섀계(DDD), 클린 μ•„ν‚€ν…μ²˜(포트 및 μ–΄λŒ‘ν„°) 및 이벀트 기반 μ•„ν‚€ν…μ²˜ μ ‘κ·Ό 방식을 κ²°ν•©ν•˜μ—¬ 도메인 μ€‘μ‹¬μ˜ κ΅¬μ‘°ν™”λ˜κ³  λͺ¨λ“ˆμ‹μ΄λ©° 그리고 ν™•μž₯ κ°€λŠ₯ν•œ μ‹œμŠ€ν…œμ„ μ„€κ³„ν•˜λŠ” 것이닀. 이에 더해, μ‹ λ°œ μ£Όλ¬Έ μ˜μ—­μ˜ μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜κ³  ν–₯ν›„ 개발 및 κ°œμ„ μ„ μœ„ν•œ 효율적이고 μœ μ—°ν•œ ν”„λ‘œμ νŠΈλ₯Ό λͺ©ν‘œλ‘œ μ„€μ •ν•˜μ˜€λ‹€.


도메인 뢄석 및 섀계(Domain Driven Design)

ν”„λ‘œμ νŠΈμ˜ 초기 λ‹¨κ³„μ—μ„œ, μ‹ λ°œ μ£Όλ¬Έ μ‹œμŠ€ν…œμ„ λΆ„μ„ν•˜κ³  μ„€κ³„ν•˜κΈ° μœ„ν•΄ 도메인 주도 섀계 원칙에 쀑점을 λ‘μ—ˆλ‹€. 핡심 도메인 κ°œλ…, λ™μž‘ 및 λΉ„μ¦ˆλ‹ˆμŠ€ κ·œμΉ™μ„ μ‹λ³„ν•¨μœΌλ‘œμ¨ 도메인에 λŒ€ν•œ 이해λ₯Ό ν•˜κ³ , νŠΉμ • 도메인 μš”κ΅¬ 사항에 λ§žλŠ” μ†”λ£¨μ…˜μ„ κ°œλ°œν•˜λŠ” 것이 λͺ©ν‘œμ΄λ‹€.


ν΄λ¦°μ•„ν‚€ν…μ²˜(Ports and Adapters)

클린 μ•„ν‚€ν…μ²˜ 원칙, 특히 포트 및 μ–΄λŒ‘ν„° νŒ¨ν„΄μ„ ν”„λ‘œμ νŠΈ 섀계에 μ μš©ν•˜κΈ° μœ„ν•΄ λ…Έλ ₯ν–ˆλ‹€. 이 접근법은 κ΄€μ‹¬μ‚¬μ˜ 뢄리와 μ„œλ‘œ λ‹€λ₯Έ 계측 κ°„μ˜ λͺ…ν™•ν•œ 경계 섀정을 κ°•μ‘°ν•˜λ©°, 각 κ³„μΈ΅μ˜ μ˜μ‘΄μ„±μ€ 도메인 계측을 ν–₯ν•΄μ•Ό ν•œλ‹€. 포트/μΈν„°νŽ˜μ΄μŠ€ 및 ν•΄λ‹Ή μ–΄λŒ‘ν„°/κ΅¬ν˜„ 클래슀λ₯Ό μ •μ˜ν•¨μœΌλ‘œμ¨, μ™ΈλΆ€ μ‹œμŠ€ν…œ 및 λ‚΄λΆ€ ꡬ성 μš”μ†Œλ₯Ό λ³€κ²½ν•  수 μžˆλŠ” μœ μ—°ν•œ μ•„ν‚€ν…μ²˜λ₯Ό λ‹¬μ„±ν•˜λŠ” 것을 λͺ©ν‘œλ‘œ ν•˜μ˜€λ‹€.


이벀트 기반 μ•„ν‚€ν…μ²˜(Event Driven Architecture)

이 ν”„λ‘œμ νŠΈμ˜ 핡심은 이벀트 기반 μ•„ν‚€ν…μ²˜μ˜ 적용이라고 말할 수 μžˆλ‹€. 이벀트 기반 섀계 원칙을 μ±„νƒν•¨μœΌλ‘œμ¨ μ„œλΉ„μŠ€ κ°„ λŠμŠ¨ν•œ 결합을 μ΄‰μ§„ν•˜κ³  이벀트 기반 μ›Œν¬ν”Œλ‘œλ₯Ό ν™œμ„±ν™”ν•˜λ©° μ‹ λ°œ μ£Όλ¬Έ μ‹œμŠ€ν…œμ˜ μ „λ°˜μ μΈ ν™•μž₯μ„±κ³Ό μ„±λŠ₯을 ν–₯μƒμ‹œν‚€λŠ” 것을 λͺ©ν‘œλ‘œ ν•˜μ˜€λ‹€.

⚠️ **GitHub.com Fallback** ⚠️