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

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

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

في هذه المقالة سوف نقوم معكم بشرح المبدئ ما قبل الاخير من مبادئ solid وهو Interface segregation والمبدا قائم على عمليات التجريد في مشروعك واستخدامك لل interface في كتابة اكوادك وهذا ما سوف نشرحه لكم ونبسطه لكم وهذا المبدأ قريب جدا من المبدأ الاول والذي كان يستعمل لجعل كل وظيفة في class منفصل وهذا يقوم بعمل اي methode او عملية في interface بحيث يمكنك الوراثه منها لاكثر من مره كما هو موضح بالاكواد التي سوف تشاهدونها في الاسفل واثناء الاستعمال قم بكتابة implements لل class الذي ترغب بالوراثه منه وسوف يتم انشاء methode بالوظيفة التي توجد بداخله وبعدها يمكنك استعاملها وتنفيذ الامر الذي ترغب به في داخلها .


وصف Flutter. تتيح مجموعة أدوات واجهة المستخدم المحمولة من Google ، Flutter ، للمطورين إنشاء تطبيقات مذهلة ومصممة محليًا من قاعدة شفرة واحدة لسطح المكتب والجوال والويب. Flutter هو برنامج مجاني ومفتوح المصدر ، ويتكامل مع الكود الحالي ، ويستخدمه المطورون والشركات في جميع أنحاء العالم. وصف Flutter. تتيح منصة Flutter مفتوحة المصدر من Google تطوير تطبيقات سطح المكتب والجوال والتطبيقات عبر الإنترنت من قاعدة كود واحدة. Flutter ، على عكس البدائل الأخرى المحبوبة ، هي مجموعة SDK كاملة ، أو مجموعة تطوير برمجيات. 04 أغسطس 2022 قدمت Google Flutter ، وهي عبارة عن حزمة SDK للجوال مفتوحة المصدر ومتعددة المنصات تتيح للمبرمجين إنشاء تطبيقات جوال لمنصتي Android و iOS من قاعدة بيانات واحدة. 10 يونيو 2022 يتم استخدام كل من Java و Flutter لإنشاء تطبيقات عبر الأنظمة الأساسية. يُطلق على إطار العمل المحمول عبر الأنظمة الأساسية Flutter.


How to use Interface segregation In Flutter

هذا المبدا يسهل جدا في عمليات التعديل بحيث لاتحتاج الى الرجوع الى كل عنصر والتغير فيه بل يمكنك التغيير في الinterface بشكل كامل وبهذا تكون انتهيت من عمليات التعديل كامله دون المرور على جميع العناصر في المشروع الخاص بك وهذا يقلل من عملية testing بشكل كبير في مشروعك وهذا هو مبدا عمل Interface segregation .


How to use Interface segregation In Flutter

main.dart


public interface Counter {
  int countCar(int value);

}

public interface Discount {

  double discount(double value);

}

class CalcFreeCar implements Counter {
  @override
  int countCar(int value)
}


class CalcPrimeCar implements Counter , Discount {
  @override
  int countCar(int value);

  @override
  double discount(double value);
  
  
// implication
  
print(CalcPrimeCar().countCar(8));
print(CalcPrimeCar().discount(5.8));

// out put : 8
// out put : 5.8


تعليقات