الگوی شیء مرکب (Composite)

مقصود :
تشکیل ساختاری درختی به منظور نمایش سلسله مراتب کل-جزء اشیاء
به Client ها اجازه میدهد با اشیاء ساده و مرکب به شکل یکسان برخورد کنند.
انگیزه :
در برنامه های گرافیکی میتوان با ترکیب اجزای پایه‌ای، اجزای مرکب ساخت
نیاز به مدل کردن اشیاء مرکب مانند اشیاء ساده
کاربرد :
وقتی میخواهیم سلسله مراتب کل-جزء اشیاء را نمایش دهیم
وقتی که میخواهیم مشتریها تفاوتی بین اشیاء ترکیبی و اشیاء بسیط احساس نکنند.


شرکت کنندگان :
• جزء (Component)
• برگ (Leaf)
• شیء مرکب (Composite)
• مشتری (Client)

همکاری‌ها :
• مشتری‌ها واسط کلاس Component را برای تعامل با اشیاء مرکب استفاده می‌کنند.
• اگر دریافت کننده یک برگ باشد، درخواست مستقیما پاسخ داده می‌شود.
• اگر دریافت کننده مرکب باشد، درخواست به فرزندان آن فرستاده می‌شود.