لقد لاحظت نفس نمط قاعدة البيانات ثلاث مرات اليوم

رأيت نفس هيكلية قاعدة البيانات ثلاث مرات في الكود الخاص بي اليوم.

أولاً، رأيتها مع الرسوم (fees).

  • Fee (الأب: ما يدين به الفصل الدراسي)
  • FeePayment (الابن: كل عملية دفع فردية)

ثم، رأيتها مع التقييمات (assessments).

  • Assessment (الأب: تفاصيل الاختبار، التاريخ، والدرجة القصوى)
  • AssessmentResult (الابن: درجة كل طالب)

تمنع هذه الهيكلية الأخطاء الشائعة.

إذا لم تستخدم نمط (الأب والابن)، فستواجه هذه المشكلات:

  • تكرار البيانات. ستقوم بنسخ الموضوع والتاريخ لكل صف خاص بالطالب.
  • إحداث ارتباك. سيكون من الصعب معرفة الصفوف التي تنتمي لحدث واحد.
  • تكدس الجداول. ستضع بيانات الترويسة في صفوف الطلاب حيث لا تنتمي.

القدرة على التعرف على الأنماط تنمو مع مرور الوقت.

في المرة الأولى التي تعالج فيها مشكلة هيكلية، يكون مجرد إصلاح فردي. في المرة الثانية التي تراها فيها، ستدرك وجود نمط. في المرة الثالثة، ستستخدمه قبل أن تواجه المشكلة.

ما زلت أقوم بالبناء واختبار الحالات الحدية (edge cases). ما زلت أتعلم.

المصدر: https://dev.to/johnstonkweku/i-spotted-the-same-database-design-pattern-three-times-in-my-own-code-today-4e4d