شبكة بحوث وتقارير ومعلومات
اليوم: ,Thu 11 Dec 2025 الساعة: 03:59 PM


اخر بحث





- [ تعرٌف على ] العلاقات السويدية اللاتفية
- [ حليّ ومجوهرات ] كيف أعرف حجر الماس
- [ خدمات السعودية ] مواعيد دوام البريد السعودي في رمضان 2023 متى  يفتح ويغلق 1444
- بنتي 6اشهر تتعرق كثير أثناء النوم والرضاعة | الموسوعة الطبية
- [ شركات الجوالات والهواتف قطر ] كيو موبايل q mobileme ... الدوحة
- [ رقم هاتف ] عيادة الدكتور خالد التركاوي ممارس عام اسنان بالمستوصف الاوروبي التخصصي بالكويت
- [ دليل دبي الامارات ] كنيسة دبي الأدفنتست السبتيين ... دبي
- [ حلويات باردة ] حلى بالآيس كريم
- [ تعرٌف على ] قط كورنيش ريكس
- [ دليل أبوظبي الامارات ] مؤسسة خليفة للتجارة العامة ... أبوظبي

[ تعرٌف على ] نموذج التصميم جسر

تم النشر اليوم 11-12-2025 | [ تعرٌف على ] نموذج التصميم جسر
[ تعرٌف على ] نموذج التصميم جسر تم النشر اليوم [dadate] | نموذج التصميم جسر

مثال صغير لكي تتضح الفكرة

في البداية قمنا بتعريف واجهة تقوم بعملية معينة. ثم قمنا بتعريف تجريد وهي الصف الجسر وفي دالة Constructor نمرر كائن من الواجهة علما بان أي صف تريد ان تجعلها لعمل من خلال الجسر لابد ان ترث من هذا الواجهة ثم قمنا بانشاء صفين كلاهما موروث من الواجهة، ومنهما يؤدي وظيفة مختلفة، ولكن دالة استدعاء الوظائف به طبعا مسماها واحد وذلك بفضل الوراثة من الواجهة وبذلك يستطيع الصف المجرد ان يقوم بالعمل مع أي الصف موروث من الواجهة مهما كان الناتج من العمليات الداخلية للصف. using System; class BridgePattern { interface Bridge { string OperationImp(); } // Bridge Pattern Judith Bishop Dec 2006, Aug 2007 // Shows an abstraction and two implementations proceeding independently class Abstraction { Bridge bridge; public Abstraction(Bridge implementation) { bridge = implementation; } public string Operation() { return "Abstraction" + "<<< BRIDGE >>>> " + bridge.OperationImp(); } } class ImplementationA : Bridge { public string OperationImp() { return "ImplementationA"; } } class ImplementationB : Bridge { public string OperationImp() { return "ImplementationB"; } } static void Main() { Console.WriteLine("Bridge Pattern "); Console.WriteLine(new Abstraction(new ImplementationA()).Operation()); Console.WriteLine(new Abstraction(new ImplementationB()).Operation()); } } /* Output Bridge Pattern Abstraction <<< BRIDGE >>>>ImplementationA Abstraction <<< BRIDGE >>>> ImplementationB */

شرح مبسط

هذا النموذج يقوم على فصل كيفية بداية عمل الكائن (الغرض) والمحتوى أو الناتج النهائي فهو يفصل بين التجريد والتطبيق (implementation). وهذا يفيد في البرامج التي يكون لها تحديثات فجزء منها ثابت وهو الموضوع به التجريد وهو الذي يقوم باستدعاء دالة معينة في الجزء الآخر وهو التطبيق implementaion فتظهر النتائج دون تدخل من الجزء الأول

شاركنا رأيك