الفرق بين المراجعتين لصفحة: «Design Patterns/bridge»
أسامه-دمراني (نقاش | مساهمات) إدخال 1.0: عنوان الصفحة |
أسامه-دمراني (نقاش | مساهمات) 2.0 محتوى |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:نمط الجسر}}</noinclude> | <noinclude>{{DISPLAYTITLE:نمط الجسر}}</noinclude> | ||
نمط الجسر هو نمط تصميم هيكلي يسمح لك بتقسيم فئة كبيرة أو مجموعة فئات مرتبطة ببعضها إلى تشكيلين هرميين منفصلين -نظري وتطبيقي-، ومن ثم يمكن تطويرهما بشكل مستقل عن بعضهما. | |||
== المشكلة == | |||
لنقل أن لديك فئة هندسية اسمها <code>shape</code>، وتلك الفئة لها زوج من الفئات الفرعية هما <code>circle</code> و<code>square</code>، وتريد توسيع هرمية تلك الفئة لتضيف الألوان على فئات تلك الأشكال الهندسية، فسيكون الحل التقليدي هنا أن تنشئ فئتين فرعيتين لفئة <code>shape</code> هما <code>Red</code> و <code>Blue</code> مثلًا. | |||
لكن بما أن لديك فئتين فرعيتين من البداية، فستحتاج إلى إنشاء أربع تجميعات لتحتوي الاحتمالات الممكنة للأشكال وألوانها التي قد تأخذها، مثل <code>BlueCircle</code> و <code>RedSquare</code>. انظر (ش.1) | |||
'''ضع الصورة ، يزيد عدد تجميعات الفئات مع إضافة المزيد من الأشكال الهندسية.''' | |||
سيكبر حجم الهرمية التي لدينا مع إضافة أشكال وألوان جديدة، فمن أجل إضافة مثلث على سبيل المثال سنضيف فئتين فرعيتين، واحدة لكل لون، وإضافة لون جديد سيتطلب إنشاء ثلاث فئات فرعية، واحدة لكل شكل، وهكذا يسوء الوضع كلما تطور الأمر وزادت المدخلات. | |||
== الحل == |
مراجعة 23:39، 29 يناير 2019
نمط الجسر هو نمط تصميم هيكلي يسمح لك بتقسيم فئة كبيرة أو مجموعة فئات مرتبطة ببعضها إلى تشكيلين هرميين منفصلين -نظري وتطبيقي-، ومن ثم يمكن تطويرهما بشكل مستقل عن بعضهما.
المشكلة
لنقل أن لديك فئة هندسية اسمها shape
، وتلك الفئة لها زوج من الفئات الفرعية هما circle
وsquare
، وتريد توسيع هرمية تلك الفئة لتضيف الألوان على فئات تلك الأشكال الهندسية، فسيكون الحل التقليدي هنا أن تنشئ فئتين فرعيتين لفئة shape
هما Red
و Blue
مثلًا.
لكن بما أن لديك فئتين فرعيتين من البداية، فستحتاج إلى إنشاء أربع تجميعات لتحتوي الاحتمالات الممكنة للأشكال وألوانها التي قد تأخذها، مثل BlueCircle
و RedSquare
. انظر (ش.1)
ضع الصورة ، يزيد عدد تجميعات الفئات مع إضافة المزيد من الأشكال الهندسية.
سيكبر حجم الهرمية التي لدينا مع إضافة أشكال وألوان جديدة، فمن أجل إضافة مثلث على سبيل المثال سنضيف فئتين فرعيتين، واحدة لكل لون، وإضافة لون جديد سيتطلب إنشاء ثلاث فئات فرعية، واحدة لكل شكل، وهكذا يسوء الوضع كلما تطور الأمر وزادت المدخلات.