سؤال

ما المقصود بـ "مبدأ انعكاس التبعية" في البرمجة الموجهة للكائنات؟ ماذا تعمل، أو ماذا تفعل؟

هل كانت مفيدة؟

المحلول

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

المبدأ ينص على:

A. يجب ألا تعتمد الوحدات النمطية عالية المستوى على الوحدات النمطية ذات المستوى المنخفض. كلاهما يجب أن يعتمد على التجريدات.

B. لا ينبغي أن تعتمد التجريدات على التفاصيل. يجب أن تعتمد التفاصيل على التجريدات.

مصدر

نصائح أخرى

السبب الرئيسي لاستخدام انعكاس التبعية هو السماح بتطبيقات مختلفة للوحدات النمطية ذات المستوى الأدنى إما في وقت الترجمة في التطبيق أو في وقت التشغيل حسب التكوين. هذا فوز كبير للاختبار لأنه يتيح لك عزل الكود الذي يجري اختباره واستخدامه بالكامل كائنات وهمية.

طريقة أخرى هذه هي مساعدة كبيرة هي نشر العميل. دعنا نقول أن لديك عملاء مختلفين مع أنظمة مصادقة مختلفة ، أو قواعد بيانات مختلفة ، أو أنظمة الإبلاغ ، أو أي شيء آخر. يمكنك تكوين نظامهم في وقت النشر عن طريق تغيير ملف XML لاختيار التطبيقات المناسبة لتلك المكونات للتحميل ، مع عدم وجود تغييرات رمز على الإطلاق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top