soroush_tayyebi
Registered User
فکتوری و موارد استفاده از آن چیست؟
اهداف:
- فکتوری انتزاعی یک الگوی طراحی خلاقانه می باشد که یک ارتباط برای ساختن خانواده های اشیای مرتبط و وابسته بدون استفاده از کلاس واقعی اون ها فراهم می کند.
- سلسله مراتبی برای کپسوله سازی پلتفرم های ممکن.یا سلسه ساخت یک محصول.
ارائه یک سطح غیر مستقیم برای تجزیه کردن ساخت خانواده های اشیای وابسته و مرتبط بدون مشخص کردن کلاس های واقعی. از مسولیت های فکتوری می توان به فراهم کردن ساخت سرویس های کل خانواده پلتفرم اشاره کرد. مشتریان هیچ وقت خودشان به طور مستقیم اشیای پلتفرم را نمی سازند بلکه از فکتوری درخواست می کنند که آن ها را بسازد.
این مکانیزم رد و بدل کردن خانواده های محصولات را راحت می کند، برای اینکه کلاس مخصوص شی فکتوری یکبار در برنامه استفاده می شود، در واقع جایی که تعریف می شود. این ساختار می تواند به سادگی با نمونه گیری از نمونه های مختلف بکار رفته از فکتوری انتزاعی، کل محصولات خانواده را جایگزین کند.
ساختار:
فکتوری انتزاعی برای هر محصول یک متد فکتوری تعریف می کند. هر متد فکتوری یک عملگر جدید و کلاس های واقعی مختص پلتفرم محصول را کپسوله سازی می کند. در نهایت هر پلتفرم توسط کلاس های گرفته شده از فکتوری مدل سازی می شود.
منبع : msadd
اهداف:
- فکتوری انتزاعی یک الگوی طراحی خلاقانه می باشد که یک ارتباط برای ساختن خانواده های اشیای مرتبط و وابسته بدون استفاده از کلاس واقعی اون ها فراهم می کند.
- سلسله مراتبی برای کپسوله سازی پلتفرم های ممکن.یا سلسه ساخت یک محصول.
ارائه یک سطح غیر مستقیم برای تجزیه کردن ساخت خانواده های اشیای وابسته و مرتبط بدون مشخص کردن کلاس های واقعی. از مسولیت های فکتوری می توان به فراهم کردن ساخت سرویس های کل خانواده پلتفرم اشاره کرد. مشتریان هیچ وقت خودشان به طور مستقیم اشیای پلتفرم را نمی سازند بلکه از فکتوری درخواست می کنند که آن ها را بسازد.
این مکانیزم رد و بدل کردن خانواده های محصولات را راحت می کند، برای اینکه کلاس مخصوص شی فکتوری یکبار در برنامه استفاده می شود، در واقع جایی که تعریف می شود. این ساختار می تواند به سادگی با نمونه گیری از نمونه های مختلف بکار رفته از فکتوری انتزاعی، کل محصولات خانواده را جایگزین کند.
ساختار:
فکتوری انتزاعی برای هر محصول یک متد فکتوری تعریف می کند. هر متد فکتوری یک عملگر جدید و کلاس های واقعی مختص پلتفرم محصول را کپسوله سازی می کند. در نهایت هر پلتفرم توسط کلاس های گرفته شده از فکتوری مدل سازی می شود.
منبع : msadd