الفرق بين المراجعتين لصفحة: «Design Patterns/strategy»
أسامه-دمراني (نقاش | مساهمات) طلا ملخص تعديل |
أسامه-دمراني (نقاش | مساهمات) 2.0 محتوى |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:نمط الخطة Strategy}}</noinclude> | <noinclude>{{DISPLAYTITLE:نمط الخطة Strategy}}</noinclude> | ||
نمط الخطة هو نمط تصميم سلوكي يسمح لك بتحديد عائلة من الخوارزميات ووضع كل واحدة منها داخل فئة منفصلة، ومن ثم جعل كائناتها تقبل التبادل (interchangeable). | |||
== المشكلة == | |||
== الحل == | |||
== مثال واقعي == | |||
== البنية == | |||
== مثال توضيحي == | |||
== قابلية التطبيق == | |||
== كيفية الاستخدام == | |||
== المزايا والعيوب == | |||
== العلاقات مع الأنماط الأخرى == | |||
== الاستخدام في لغة جافا == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
== الاستخدام في لغة #C == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
== الاستخدام في لغة PHP == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
سيكون من السهل عليك استيعاب المثال التالي بعد تعلم بنية النمط، بناء على استخدام واقعي له في لغة PHP. | |||
== الاستخدام في لغة بايثون == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
== الاستخدام في لغة روبي == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
== الاستخدام في لغة Swift == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
بعد تعلم بنية النمط سيكون من السهل عليك استيعاب المثال التالي المبني على حالة واقعية في لغة Swift. | |||
== الاستخدام في لغة TypeScript == | |||
'''المستوى: '''★ ☆ ☆ | |||
'''الانتشار: ''' ★ ★ ☆ | |||
'''أمثلة الاستخدام:''' | |||
===مثال تصوري=== | |||
يوضح هذا المثال بنية نمط '''الخطة (Strategy)'''، ويركز على إجابة الأسئلة التالية: | |||
*ما الفئات التي يتكون منها؟ | |||
*ما الأدوار التي تلعبها هذه الفئات؟ | |||
*كيف ترتبط عناصر النمط ببعضها؟ | |||
== انظر أيضًا == | |||
== مصادر == |
مراجعة 14:04، 27 سبتمبر 2019
نمط الخطة هو نمط تصميم سلوكي يسمح لك بتحديد عائلة من الخوارزميات ووضع كل واحدة منها داخل فئة منفصلة، ومن ثم جعل كائناتها تقبل التبادل (interchangeable).
المشكلة
الحل
مثال واقعي
البنية
مثال توضيحي
قابلية التطبيق
كيفية الاستخدام
المزايا والعيوب
العلاقات مع الأنماط الأخرى
الاستخدام في لغة جافا
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
الاستخدام في لغة #C
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟
الاستخدام في لغة PHP
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟
سيكون من السهل عليك استيعاب المثال التالي بعد تعلم بنية النمط، بناء على استخدام واقعي له في لغة PHP.
الاستخدام في لغة بايثون
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟
الاستخدام في لغة روبي
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟
الاستخدام في لغة Swift
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟
بعد تعلم بنية النمط سيكون من السهل عليك استيعاب المثال التالي المبني على حالة واقعية في لغة Swift.
الاستخدام في لغة TypeScript
المستوى: ★ ☆ ☆
الانتشار: ★ ★ ☆
أمثلة الاستخدام:
مثال تصوري
يوضح هذا المثال بنية نمط الخطة (Strategy)، ويركز على إجابة الأسئلة التالية:
- ما الفئات التي يتكون منها؟
- ما الأدوار التي تلعبها هذه الفئات؟
- كيف ترتبط عناصر النمط ببعضها؟