قانون Demeter یک دستورالعمل طراحی برای توسعه نرم افزار است، به ویژه در برنامه نویسی شی گرا، هدف آن کاهش وابستگی بین اشیاء، ساخت سیستم های ماژولارتر، آسان تر برای حفظ و کمتر مستعد باگ است.

درک قانون دمتر

قانون دمتر، اغلب به عنوان "فقط با دوستان فوری خود صحبت کنید"، اشیاء را تشویق می کند تا فقط با همکاران مستقیم خود ارتباط برقرار کنند.این بدان معنی است که یک شی باید فقط به روش های زیر اشاره کند:

  • خود
  • اشیاء به عنوان پارامترهای تصویب شده
  • اشیاء که ایجاد می کند
  • ویژگی مستقیم آن Objects

با رعایت این قانون، وابستگی های شی به حداقل می رسد، خطر اتصال تنگ و ایجاد کد برای تغییر یا گسترش آسان تر می شود.

اجرای قانون دمتر

پیاده سازی قانون دمتر شامل طراحی کلاس ها و روش هایی است که به طور عمیق به گراف های شی نمی رسند.

[[ویرایش] [۱] [۱۰] [۱] [۱] [[۱۰]] [[۱۰]]] [[۳]] [[۱۰]]] [[۳]] [[۳]] [[۱۰]] [۱] [۱] [[۱۰]] [۱] [۱] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۳] [۳] [۳] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۳] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۳] [۱] [۱] [۳] [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[

بهتر است یک روش ارائه دهید که اطلاعات لازم را به طور مستقیم ارسال کند:

[[ویرایش] [۱] [۱۰]

Refactoring Tips

  • زنجیره های پیچیده را درون خود کلاس قرار دهید.
  • ایجاد روش هایی که فقط داده های لازم را افشا می کنند.
  • از الگوهای طراحی مانند نما یا Mediator برای کاهش وابستگی ها استفاده کنید.
  • کلاس ها را بر یک مسئولیت واحد متمرکز کنید.

مزایای پیروی از قانون دمتر

رعایت این قانون مزایای مختلفی را ارائه می دهد:

  • کاهش اتصال بین کلاس ها
  • قابلیت خواندن و حفظ کد را افزایش می دهد.
  • تست واحد را با جدا کردن اشیاء آسان تر می کند.
  • تسهیل مجدد و گسترش کد آسان تر است.

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