ddd-tactical-patterns
تطبيق أنماط التصميم الموجهة بالمجال التكتيكية على الكود الخاص بك
هل تواجه صعوبة في تحويل قواعد المجال إلى هياكل كود نظيفة؟ يرشدك هذا المهارة عبر أنماط التصميم الموجهة بالمجال التكتيكية بما في ذلك الكيانات، وكائنات القيمة، والتجميعات، والمستودعات، وأحداث المجال.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "ddd-tactical-patterns". نموذج تجميع الطلب مع عمليات الإلغاء والإلغاء
النتيجة المتوقعة:
class Order مع حقل الحالة الخاص، طريقة التحقق التي تتحقق من عدد العناصر وتفرض ثابت التحويل الفردي، وطريقة الإلغاء مع شروط الحراسة المناسبة. يشمل إصدار حدث المجال لـ OrderSubmitted و OrderCancelled.
استخدام "ddd-tactical-patterns". إنشاء كائن قيمة لعنوان البريد الإلكتروني
النتيجة المتوقعة:
class Email غير القابل للتغيير مع التحقق من صحة التعبير العادي في المُنشئ، والمساواة حسب مقارنة القيمة، وطريقة toString(). يرفض التنسيقات غير الصالحة في وقت البناء.
التدقيق الأمني
آمنAll static analysis findings are false positives. The 'external_commands' detections were Markdown backticks around code examples (e.g., `OrderSubmitted`), not actual shell execution. The 'blocker' findings for weak cryptography and system reconnaissance were triggered by documentation text, not executable code. This is a safe educational skill containing only DDD pattern guidance and TypeScript examples.
درجة الجودة
ماذا يمكنك بناءه
إعادة هيكلة نماذج المجال الفقرية
تحويل فئات البيانات فقط إلى كائنات مجال غنية بالسلوك تفرض قواعد العمل.
تصميم تجميعات جديدة
هيمنة كود المجال الجديد مع حدود التجميع الصحيحة وإنفاذ الثوابت.
تنفيذ أحداث المجال
إضافة اتصال موجه بالأحداث بين التجميعات باستخدام أحداث المجال الماضية.
جرّب هذه الموجهات
أحتاج إلى نموذج تجميع الطلب. ساعدني في تحديد الثوابت، وتصميم الكيان مع طرق السلوك، وتحديد كائنات القيمة المناسبة لهذا المجال.
إنشاء كائن قيمة غير قابل للتغيير للمال يتضمن العملة والمبلغ. قم بتضمين التحقق من الصحة عند البناء والمساواة حسب القيمة.
تصميم واجهة مستودع لتجميع الطلبات التي تعرض طرق استعلام صديقة للمجال دون تسريب تفاصيل تنفيذ ORM.
ساعدني في تحديد أحداث مجال لتحويلات حالة الطلب. قم بتضمين التسمية الماضية الزمن، والحمولات الدنيا، واستراتيجية إصدار المخطط.
أفضل الممارسات
- حدد الثوابت أولاً، ثم صمم حدود التجميع حولها
- اجعل كائنات القيمة غير قابلة للتغيير مع التحقق من الصحة في وقت البناء
- اسم أحداث المجال بزمن الماضي مع حمولات دنيا ومستقرة
تجنب
- قواعد الاتساق المتزامنة عبر التجميع التي تنتهك حدود المعاملات
- تسريب كيانات ORM إلى طبقة المجال
- وحدات التحكم التي تحتوي على منطق العمل المجال بدلاً من كائنات المجال
الأسئلة المتكررة
متى يجب أن أستخدم التجميعات مقابل الكيانات البسيطة؟
هل يجب أن تكون كائنات القيمة قابلة للتغيير؟
كيف أتعامل مع الاتصال عبر التجميع؟
ماذا ينتمي إلى واجهة المستودع؟
كيف أعرف إذا كنت بحاجة إلى أحداث المجال؟
هل يمكنني استخدام هذه المهارة لبنية الخدمات المصغرة؟
تفاصيل المطور
المؤلف
sickn33الترخيص
MIT
المستودع
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/ddd-tactical-patternsمرجع
main
بنية الملفات