หลังจากอ่านและค้นคว้า DDD มาหนึ่งเดือนฉันตัดสินใจเริ่มโครงการของตัวเองและสร้าง DDD ด้วยบริบทที่ล้อมรอบเหล่านี้>
- ลูกค้า
- ผลิตภัณฑ์
- สั่งซื้อ
- การเรียกเก็บเงิน
แต่ละบริบทที่ถูกล้อมรอบมี API ส่วนที่เหลือเป็นเลเยอร์การนำเสนอเลเยอร์โดเมนชั้นถาวร
จนถึงตอนนี้โค้ดก็ทำงานได้อย่างราบรื่น แต่มาจากโลกใบใหญ่ที่ฉันยังคงพยายามหาข้อมูลต่อไปนี้:
- เมื่อฉันต้องการสร้างลูกค้าใหม่ออกใบแจ้งหนี้ใหม่สร้างคำสั่งซื้อใหม่ที่ฉันต้องการตัวอย่างเช่นรายการการเข้าถึงของประเทศ ฉัน:
ก) สร้างรายชื่อประเทศในแต่ละปีก่อนคริสต์ศักราช
b) สร้างประเทศ BC -> API และใช้เพื่อรับรายชื่อประเทศที่มี
c) ใช้ API ของบุคคลที่สามและดึงข้อมูลผ่านเลเยอร์ anticoruption ในแต่ละ BC
- เมื่อรวมเข้ากับ API ของบุคคลที่สามโดยใช้เลเยอร์ต่อต้านการคอร์รัปชั่นหรือเลเยอร์อะแดปเตอร์จะต้องมีข้อมูลใดบ้างในโมเดลโดเมนของฉัน ตัวอย่างเช่นถ้าฉันต้องการรวม zendesk API กับ Client BC ฉันต้องการเพียง ticketID ในโดเมนของฉันหรือฉันต้องดึงข้อมูลทั้งหมดจาก Zendesk ที่ฉันต้องการเข้าถึงและใช้งานใน Client BC หรือไม่
หากแอป MVC ของฉันกำลังรับข้อมูลจาก API (เลเยอร์การนำเสนอของบริบทที่มีขอบเขต) ของฉันฉันพบว่ามันยากมากที่จะกำหนดขอบเขตของแต่ละ BC อย่างชัดเจน หมายความว่า BC ที่ออกแบบมาอย่างเหมาะสมจะให้บริการคอนโทรลเลอร์ MVC เดียวโดยไม่จำเป็นต้องใช้ API เพิ่มเติมหรือไม่