الهندسة المدنية والهيكلية
استخدام جهاز التشريح لإضافة لوج إلى أساليب الخدمة القائمة دون تغيير قانونها
Table of Contents
إن نمط تعيين المصممين هو نمط تصميمي قوي في هندسة البرمجيات يتيح للمطورين إضافة وظيفة جديدة إلى الأشياء الموجودة دون تعديل شفرتها الأصلية، وهذا النهج مفيد بوجه خاص عندما تحتاج إلى إضافة قطع الأشجار إلى أساليب الخدمة دون تغيير رمز مصادرها، وضمان قواعد شفرة نظيفة وقابلة للاستمرار.
فهم خطة ديكور
ويشمل نمط تعيين المصممين إنشاء طبقة ملفوفة تنفذ نفس الوصلة التي تُستخدم في الخدمة الأصلية، ويتصل هذا المندوبون المغلفون بالخدمة الأصلية، ولكنه يضيف سلوكاً إضافياً - مثل قطع الأشجار - قبل أو بعد تنفيذ الطريقة.
تنفيذ نظام التسجيل مع مركز الديسكور
افترض أن لديك واجهة خدمة
public interface DataService {
void fetchData();
}
يمكنك أن تخلق تنفيذاً ملموساً:
public class RealDataService implements DataService {
@Override
public void fetchData() {
// Fetch data from a database or external API
}
}
التالي، خلق فصل مصمم للديكور يضيف قطع الأشجار:
public class LoggingDataServiceDecorator implements DataService {
private final DataService wrappedService;
public LoggingDataServiceDecorator(DataService service) {
this.wrappedService = service;
}
@Override
public void fetchData() {
System.out.println("Fetching data started.");
wrappedService.fetchData();
System.out.println("Fetching data completed.");
}
}
استخدام المُقَرِّر
لإضافة قطع الأشجار، تنبيه المصمم إلى خدمتك الحالية:
DataService service = new RealDataService();
DataService loggedService = new LoggingDataServiceDecorator(service);
// Now, calling fetchData will include logging
loggedService.fetchData();
استحقاقات مركز قرص
- تعزيز الأداء الوظيفي الحالي دون تعديل القانون الأصلي
- تشجيع إعادة استخدام الشفرة وفصل الشواغل
- :: تيسير إضافة طبقات متعددة من السلوك ديناميا
إن استخدام نمط مصممي الدراجات هو حل واضح يحافظ على المدونة النظيفة ويلتزم بمبدأ المغلقة، مما يجعل طلباتكم أسهل لتوسيعها وصيانتها.