كل ما تريد معرفته عن نمط سلسلة المسؤولية

نمط سلسلة المسؤولية بالانجليزية (Chain-of-responsibility pattern) في التصميم الكائني التوجه هو نمط تصميم سلوكي يتكون من مصدر كائنات الأمر وسلسلة من كائنات المعالجة . يحتوي كل كائن معالجة على منطق يحدد أنواع كائنات الأوامر التي يمكنه معالجتها ؛ يتم تمرير الباقي إلى كائن المعالجة التالي في السلسلة. توجد أيضًا آلية لإضافة كائنات معالجة جديدة إلى نهاية هذه السلسلة.

في تباين نموذج سلسلة المسؤولية القياسي، قد يعمل بعض المتعاملين كمرسلين، قادرين على إرسال الأوامر في مجموعة متنوعة من الاتجاهات، وتشكيل شجرة المسؤولية . في بعض الحالات، يمكن أن يحدث هذا بشكل متكرر، حيث تستدعي معالجة الكائنات كائنات معالجة أعلى بأوامر تحاول حل جزء أصغر من المشكلة ؛ في هذه الحالة، يستمر العودية حتى تتم معالجة الأمر، أو يتم استكشاف الشجرة بأكملها. قد يعمل مترجم XML بهذه الطريقة.

يروج هذا النمط لفكرة الاقتران السائب .

نمط سلسلة المسؤولية متطابق تقريبًا من الناحية الهيكلية مع نمط الديكور ، والفرق هو أنه بالنسبة لمصمم الديكور، تتعامل جميع الفئات مع الطلب، بينما بالنسبة لسلسلة المسؤولية، تتعامل إحدى الفئات في السلسلة بالضبط مع الطلب. هذا تعريف صارم لمفهوم المسؤولية في كتاب GoF. ومع ذلك، فإن العديد من التطبيقات (مثل المسجلات أدناه، أو معالجة حدث واجهة المستخدم، أو عوامل تصفية servlet في Java ، إلخ) تسمح للعديد من العناصر في السلسلة بتحمل المسؤولية.

قراءة المقال الكامل على ويكيبيديا ←