زمان تخمینی مطالعه: 2 دقیقه
در مهندسی نرمافزار، الگوهای طراحی Creational، الگوهای طراحی هستند که با مکانیسمهای ایجاد شی سر و کار دارند و سعی میکنند اشیا را به شیوهای مناسب و منطبق با موقعیت ایجاد کنند. شکل اصلی ایجاد شی میتواند منجر به مشکلات طراحی یا افزودن پیچیدگی بیشتر به طراحی شود. الگوهای طراحی Creational این مشکل را با کنترل ایجاد شیء حل میکنند.
دستههای اصلی الگوهای طراحی Creational
الگوهای طراحی ایجادی دارای پنج زیر دسته اصلی است که در ادامه ذکر شده است:
- الگوی متد Factory : این متد که با نام سازنده مجازی نیز شناخته میشود، یک الگوی طراحی است که یک رابط(Interface) را برای ایجاد اشیاء در یک سوپرکلاس فراهم میکند، اما به زیر کلاسها اجازه میدهد تا نوع اشیایی که ایجاد میشوند را تغییر دهند.
- الگوی Abstract Factory : این الگو در مهندسی نرمافزار راهی برای ایجاد خانوادههای اشیاء مرتبط بدون تحمیل کلاسهای Concrete آنها، با کپسولهسازی گروهی از کارخانههای(Factories) منفرد که دارای یک موضوع مشترک هستند، بدون مشخص کردن کلاسهای Concrete خود، فراهم میکند.
- الگوی طراحی Builder : به کاربر امکان میدهد اشیاء پیچیده را مرحله به مرحله بسازید. همچنین باعث میشود تا انواع و نمایشهای مختلف یک شی را با استفاده از کد ساخت یکسان تولید کنید.
- الگوی طراحی Prototype : امکان ایجاد اشیاء(object) جدید را با کپی کردن یک شی موجود فراهم میکند. الگوی Prototype به برنامه نویس امکان میدهد پیچیدگی ایجاد نمونههای جدید را از مشتری پنهان کند. در واقع مفهوم اصلی این الگو، کپی کردن یک شی موجود به جای ایجاد یک نمونه جدید از ابتدا است، فرآیندی که ممکن است بسیار پرهزینه باشد.
- الگوی طراحی Singleton: الگوی Singleton به کاربر امکان میدهد اطمینان حاصل کند که یک کلاس فقط یک نمونه(instance) دارد، در حالی که یک نقطه دسترسی گلوبال به این نمونه ارائه میدهد. این الگو دارای یک ساختار ساده، آسان برای درک و استفاده میباشد. سادگی آن باعث شده که گاهی اوقات بیش از اندازه و در سناریوهایی که نیازی به آن نیست استفاده شود.