أصناف البيانات (Data Classes)

من موسوعة حسوب
مراجعة 13:26، 30 سبتمبر 2018 بواسطة Nourtam (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:أصناف البيانات (Data Classes)}}</noinclude> == توصيف المشكلة == وجود العديد من أصناف البيانات...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

توصيف المشكلة

وجود العديد من أصناف البيانات في الشيفرة، والتي تُستخدَم لتخزين البيانات التي تحتاج إليها الأصناف الأخرى، إذ تحتوي على حقولٍ للبيانات (fields) وتوابع للوصول إليها (accessors) أي توابعَ للحصول على بيانات الحقول (getter) وأخرى لتعديلها (setter)، ولا تقوم هذه الأصناف بأيّ مهمّة أخرى ولا تستطيع كذلك تنفيذ العمليات (operations) على بياناتها بمفردها.

أسبابها

من الطبيعي أن يحتوي الصنف -بادئ الأمر- على القليل من الحقول العامّة (public fields) وبعض التوابع للوصول إليها (accessors) ولكن إن استمرَّ الصنف كذلك فلن تتمتَّعَ الكائنات (objects) المُشتقَّة عنه بقوة التحكُّم ببياناتها وإجراء العمليَّات عليها.

وما الحل؟

إليك المزيد

سيساعد حلُّ المشكلة في:

  • تسهيل فهم الشيفرة وتحسين تنظيمها، فقد أصبحت العمليات المتعلِّقة بتلك الحقول مُجمَّعةً في مكانٍ واحدٍ بدلًا من وجودها بأجزاء متفرِّقة.
  • الكشف عن مواضع التكرار (duplicates) في شيفرة العميل (client code).

انظر أيضًا

مصادر