شارك المقالة

شرح Dependency Inversion في مبادئ ال Solid لكتابة كود منظم


شرح Dependency Inversion في مبادئ ال Solid لكتابة كود منظم

يعد استخدام المبدئ الاخير وهو Dependency Inversion من اكثر المبادئ التي سوف تشاهدها منتشره بشكل كبير عندنا ترغب بتعلم ال soild فهذا المبدئ مبني على عدم كتابة الكود في الclass الذي يتم استدعاء ال methode بداخله كما سوف نشاهد في الجزء التطبيقي , والامر بسيط جدا وبمجرد الانتهاء من هذا الدرس نكون شرحنا لكم مبادئ ال soild بابسط شرح مع مثال توضيحي لكل خاصيه منهم حتى تكون الامور واضحه بالنسبة لكم دعونا لا نطيل المقال وننتقل معكم الى شرح المبدئ Dependency Inversion .


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


Good code

في المثال التالي نلاحظ انه لدينا class بداخله مجموعة methods ويكون نوع ال class هو abstract لكي نقوم بعمل implements  له والحصول على جميع الخصائص التي بداخله وعمل لها override كما هو موضح عند استخدامه في CounterImp تم توليد جميع الmethods وتنفيذ الوظيفة بداخلها بدون مشاكل وبهذا تكون قد طبقت مبدأ Dependency Inversion بكل سهوله .


Good code

code


abstract class Counter {
  int countCar();
  double time();

}

class CounterImp implements Counter {

  @override
  int countCar() {
    return 1;
  }

  @override
  double time() {
    return 1.0;
  }

}

فيديو الشرح



شاهد أيضًا
مقالات ذات صلة
التعامل مع Map #9 : طريقة عمل tracking او تتبع لموقع المستخدم من قاعة البينانات Data base برنامج اندرويد ستوديو

  يعد هذا الدرس نهاية دورة maping من دروس اندرويد ستوديو , بالنسبه للدروس التي…

إرسال رسائل بريد إلكتروني بسهولة باستخدام SendMail API في Nodejs

  ارسال email لاي شخص بدون كتابة كود backend باستخدام apiتعتبر عملية إرسال رسائل البريد…

اجعل تطبيقات Flutter الخاصة بك تنبض بالحياة مع الوسائط المتعددة

الحل الأمثل لتشغيل الفيديو والصوت في Flutter مع مكتبة Media Kitتعد الوسائط المتعددة جزءًا كبيرًا…

🚫 مانع الإعلانات مفعل

يجب إيقاف مانع الإعلانات لاستكمال تصفح الموقع