Skip to content
เข้าสู่ระบบ

Domain-Driven Design

ทำไมต้อง Domain-Driven Design

Section titled “ทำไมต้อง Domain-Driven Design”

Domain-Driven Design (DDD) เป็นแนวทางการออกแบบซอฟต์แวร์ที่เน้นการทำความเข้าใจ business domain อย่างลึกซึ้ง และนำความรู้นั้นมาสะท้อนในโค้ด โดยมีเป้าหมายให้โค้ดสื่อสารกับ business experts ได้โดยตรง และสามารถรองรับความซับซ้อนของ business rules ได้ดี

ConceptDescriptionDjango Implementation
Bounded Contextขอบเขตของ domain ที่มีความหมายเฉพาะDjango App
Ubiquitous Languageภาษาที่ใช้ร่วมกันระหว่าง dev และ businessModel/Method names
Aggregateกลุ่ม entities ที่ต้องสอดคล้องกันModel + related models
Entityobject ที่มี identityModel with ID
Value Objectobject ที่ไม่มี identitydataclass (frozen)
Domain Eventเหตุการณ์ที่เกิดขึ้นใน domainSignal + Event class
Repositoryabstraction สำหรับ data accessManager/Repository class
Domain Servicebusiness logic ที่ไม่ belong กับ entity ใดService class

เข้าสู่ระบบเพื่อดูเนื้อหาเต็ม

ยืนยันตัวตนด้วยบัญชี Google เพื่อปลดล็อกบทความทั้งหมด