بوی کد 287 – تکالیف محلی بلااستفاده

آیا از مقدار برگشتی استفاده می کنید؟

TL ؛ DR: از اختصاص مقادیری که هرگز استفاده نمی کنید خودداری کنید.

مشکلات

راه حل

  1. تکالیف بلااستفاده را حذف کنید.
  2. سعی کنید از عوارض جانبی خودداری کنید.

زمینه

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

این می تواند دیگران را گیج کرده و کد را برای نگهداری سخت تر کند.

بعضی اوقات ، هنگام اشکال زدایی می توانید متغیرهای زمانی را برای بازرسی بهتر اختصاص دهید.

این همچنین هنگامی اتفاق می افتد که شما اعدام را به یک دارایی اما دنبال کردن آن سخت تر است.

این همچنین نشانه ای از یک شیء جهش دهنده است زیرا اگر تکالیف را حذف کنید ، فقط عوارض جانبی باقی می مانند.

اشیاء جهش یافته می توانند عوارض جانبی غیر منتظره ای ایجاد کنند و ردیابی تغییرات را سخت تر می کند.

رمز نمونه

اشتباه

function updateUserName(user, newname) {
  user.name = newname;
  return user;
}

function performMaintenance(existingUser) {
  let updatedUser = updateUserName(existingUser, "Bobby Peru");
  // Other tasks
}
// The variable updatedUser is never used

حق

function updateUserName(user, newname) {
  user.name = newname;
  // Just side effects without explicit return
}

function performMaintenance(existingUser) {
  updateUserName(existingUser, "Bobby Peru");
  // Other tasks
}

تشخیص

شما می توانید این بوی را با استفاده از ابزارهای تجزیه و تحلیل استاتیک یا بررسی کد که بررسی می کنند ، تشخیص دهید

Source link