دیزاین پترن چیست؟

دیزاین پترن چیست؟

دیزاین پترن ها راه حلی برای تکرار شدن مشکلات هستند. دیزاین پترن ها (Design Patterns) بدون شک مفید هستند. آنها به طراحان این امکان را می دهند که “چرخ را دوباره اختراع نکنند!”

شاید بارها اسم دیزاین پترن رو شنیده باشید اگر بخواهم به صورت خلاصه و مفید بگم دیزاین پترن چیست، باید بگویم بعضی وقت ها یک سری کارها تکراری و پر رخداد داریم که هر کسی برای انجام آنها یک راه حل ارائه میدهد. حال در طول زمان برای انجام این کارهای تکرای و پر رخداد یک سری راه حل استاندارد و قابل تکرار ارائه شده است که به آنها الگوهای طراحی میگویند.

 

به بیان ساده، دیزاین پترن ها راه حلی برای تکرار شدن مشکلات هستند. در دنیای تجربه کاربری یا UX یک دیزاین پترن راه حلی از پیش تعریف شده برای حل مشکلات طراحی پروژه می باشد. به بیان دیگر ما توسط دیزاین پترن ها می گوییم: “این روشی است که ما برای حل مشکلات پروژه از آن استفاده می کنیم. اگر شما هم می خواهید از متد ما استفاده کنید”

یکی از مدیران وب سایت هاب اسپات (Hubspot) بنام Chelsea Bathurst می گوید: “کامپوننت ها پایه و اساس پروژه ها هستند. دیزاین پترن مشخص می کند این کامپوننت ها چگونه با یکدیگر کار کنند.”

دیزاین پترن ها (Design Patterns) بدون شک مفید هستند. آنها به طراحان این امکان را می دهند که “چرخ را دوباره اختراع نکنند!”

زیرا دیزاین پترن ها توسط طراحان زبده و حرفه ای تست شده اند، ریسک استفاده از آنها پایین است و از طراحی از ابتدا (from scratch) خیلی بهتر است.

دیزاین پترن یک کلاس برنامه نویسی یا یک کتابخانه و یا حتی یک تابع در برنامه که ما به کدهایمان اضافه می کنیم نیست. اینو باید متذکر شوم که دیزان پترن نه کلاس برنامه نویسی است نه یک کتابخانه و حتی یک تابع در برنامه که ما به کدهایمان اضافه می کنیم نیست. دیزاین پترن یه قالب است که باید در شرایطی درست از آن استفاده کنیم و همچنین مستقل از زبان برنامه نویسی می باشد.

 

انواع دیزاین پترن:

سه نوع دیزاین پترن یا Design Pattern داریم:

  • خلاقانه (Creational): با توجه به مکانیزم تولید آبجکت
  • ساختاری (Structural): با توجه به ارتباط بین کلاس و آبجکت و نیز پترن بین کامپوننت ها
  • رفتاری (Behavioral): شناسایی پترن ارتباطی بین آبجکت های کلاس

 

الگوهای خلاقانه (Creational Patterns)

این الگو‌ها همونطوری که از اسمشون هم مشخصه راه‌حل‌هایی رو در ایجاد اقلام مختلف مثل متدها، نمونه‌ها و… برای ما تعریف می‌کنند. 

الگوهای ساختاری (structural patterns)

این دسته از پترن‌ها این امکان رو به ما میدن که به شکل بهینه‌تری بین ساختارها، متدها، کلاس‌ها و اساسا هر موجودیتی که در زبانمون داریم ارتباط برقرار کنیم.

الگوهای رفتاری (behavioral patterns)

الگوهای رفتاری هم به رفتار Entityهامون (موجودیت‌ها شامل کلاس، متد، نمونه، اینترفیس و…) نسبت به مسائل مختلف میپردازند. مسئله میتواند تغییر یک entity دیگه باشد یا میتواند تغییر state داخل خود entity باشد.

برخی دیزاین پترن های مطرح:

Factory Pattern

Abstract Factory Pattern

Singleton Pattern

Adapter Pattern

Bridge Pattern

Facade Pattern

Proxy Pattern

Command Pattern

Observer Pattern

Strategy Pattern

Template Pattern

Visitor Pattern

 

در مطالب بعد در مورد این دیزاین پترن ها صحبت خواهیم کرد.

 

درصورتی که سوالی دارید از بخش نظرات ارسال نمایید.

 

منبع: sourceiran.com - mohtava.info


ارسال نظر

برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *

ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *

اگر نظری برای این مطلب ارسال شد از طریق ایمیل مرا اطلاع بده!
لسیت نظرات
هنوز برای این مطلب نظری ارسال نشده است!