در دنیای برنامهنویسی، دیزاین پترنها راهحلهایی هستند که میتوانند به ما کمک کنند تا کد نویسی ما نظم بیشتری داشته باشد و مدیریت پیچیدگیهای برنامهنویسی را آسانتر کنند. یکی از پرکاربردترین این الگوها، دیزاین پترن کارخانه یا Factory Pattern است که در دستهبندی ساختاری اشیاء قرار میگیرد.
تعریف دیزاین پترن کارخانه
دیزاین پترن کارخانه بر این اصل استوار است که شیوه ساخت نمونههایی از کلاسها باید از کدی که از این نمونهها استفاده میکند، جدا شود. این الگو به توسعهدهندگان امکان میدهد که با تغییر دادن تنها یک بخش از کد، نوع شیئی که ساخته میشود را تغییر دهند.
ساختار
دیزاین پترن کارخانه از سه بخش اصلی تشکیل شده است:
- Product: اینترفیسی که تعریف میکند اشیاء چه عملکردی دارند.
- Concrete Products: کلاسهایی که اینترفیس محصول را پیادهسازی کرده و عملکرد واقعی اشیاء را تعریف میکنند.
- Creator: کلاسی که مسئول ساختن محصولات است. این کلاس میتواند یک متد انتزاعی داشته باشد که در کلاسهای فرزند پیادهسازی میشود (Factory Method) یا میتواند خودش محصولات را مستقیماً بسازد.
مزایا
- انعطافپذیری: تغییر در نوع شیئی که تولید میشود بدون تغییر دادن کد مشتری.
- کد تمیزتر: جداسازی مسئولیتها، که منجر به کد تمیزتر و قابل نگهداریتر میشود.
- توسعهپذیری: افزودن کلاسهای محصول جدید بدون تغییر دادن کد موجود.