mahdi
با پترن Prototype آشنا بشید! 👽
دیزاین پترن پروتوتایپ، یک پترن creational هست که اشیاء جدید رو با کپی کردن یک شی موجود مشخص میکنه، بنابراین نیازی به ایجاد کلاسهای جدید نیست. این الگو به ما اجازه میده تا اشیاء موجود رو شبیه سازی کنیم و نمونه های جدیدی رو با همون داده ها ایجاد کنیم. هر تغییری که در شیء شبیه سازی شده ایجاد میشه، بر روی شی اصلی تأثیری نداره. به خصوص زمانی که هزینه ساخت یک شی گرانتر یا پیچیده تر از کپی کردن یک شیء موجود باشد، مفیده.
شیء تازه کپی شده فقط در صورت نیاز ممکنه همون خصوصیات رو تغییر بده. این رویکرد باعث صرفه جویی در منابع و زمان پرهزینه میشه، به خصوص زمانی که ساخت شی یک فرآیند سنگینه.
یکی از بهترین راه های موجود برای ساخت یک شی از اشیاء موجود، متد ()clone هست. Clone ساده ترین روش برای اجرای یک الگوی نمونه اولیه هست.
با این مثال میتونید کامل این الگو رو درک کنید. تصور کنید شما یک طراح هستید که مبلمان میسازید.
🔵Prototype (صندلی نمونه): شما با دقت یک صندلی تکی رو با طراحی، مواد و پایان عالی میسازید. این صندلی به "prototype" شما تبدیل میشه - طرحی برای همه صندلی های مبلمان شما.
🔵 Cloning (تولید انبوه): به جای اینکه هر صندلی رو کاملاً از ابتدا بسازید، از prototype استفاده می کنین. یک تیم کارگاه نمونه اولیه رو میگیره و با استفاده از همون مواد و تکنیک های ساخت، کپی های دقیقی رو میسازه. این فرآیند شبیه سازی به طور موثر صندلی های جدیدی رو بر اساس نمونه اولیه ساخته شده تولید میکنه.
🔵 Customization (تغییرها): در حالی که طراحی اصلی از prototype میاد، فضایی برای سفارشی سازی وجود داره. ممکنه نسخههای رنگی متفاوتی از صندلی ها بسازین، از پارچههای مختلف برای لوازم داخلی استفاده کنین یا حتی اندازه اون رو کمی تنظیم کنید. این تغییرات نشان دهنده مد هست.
به صورت کلی بخوام این پترن رو در یک جمله تعریف کنم، "راهی برای ساخت اشیاء جدید با کپی کردن موارد موجود" میشه. برای کسب اطلاعات بیشتر و مشاهده نمونه کد ها، مقالات زیر رو مطالعه کنید.
- Article
- Article
- Article
#design_pattern
@CodeModule
9 · 703 ·