برنامه نویسی

مورد 43: ارجاع به روش ها را به لامبدا ترجیح دهید

Summarize this content to 400 words in Persian Lang
مزایای مراجع برای روش ها

مختصر بودن: ارجاع به روش ها مختصرتر از لامبدا است.مثال: افزایش مقدار در نقشه با استفاده از ادغام:
لامبدا: (شمارش، درج) -> شمارش + incrارجاع به روش: Integer::sum

کاهش دیگ بخارحذف پارامترهای بی فایده: پارامترهایی مانند count و incr حذف می شوند.مثال:

map.merge(key, 1, Integer::sum);

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استفاده کارآمد از منابع برای روش ها

اسناد مفید در مورد Lambdas: در برخی موارد، نام پارامترها در لامبدا می تواند مستندات مفیدی را ارائه دهد.

تبدیل لامبدا به متدها: اگر یک لامبدا خیلی پیچیده است، کد را در یک متد جداگانه استخراج کنید و از ارجاع به آن متد استفاده کنید.

IDE ها و مراجع برای روش ها

پیشنهادات IDE: IDE ها اغلب پیشنهاد می کنند که لامبدا را با ارجاع به روش ها جایگزین کنید.

پذیرش پیشنهادات: به طور کلی، پیشنهادات را بپذیرید، اما به صورت موردی ارزیابی کنید.

استثناها و ملاحظات

لامبداهای مختصر تر: گاهی اوقات لامبدا مختصرتر از مراجع روش است.
مثال با کلاس:

مرجع روش: GoshThisClassNameIsHumongous::action

لامبدا: () -> اقدام()

تابع هویت: Function.identity() در مقابل x -> x

انواع مراجع برای روش ها

استاتیک: Integer::parseInt (lambda: str -> Integer.parseInt(str))

محدود: Instant.now()::isAfter (lambda: t -> Instant.now().isAfter

نامحدود: رشته::toLowerCase (lambda: str -> str.toLowerCase())

سازنده کلاس: TreeMap::new (lambda: () -> new TreeMap)

آرایه ساز: بین المللی[]::new (lambda: len -> new int[len])

نتیجهاولویت برای مراجع برای روشها: از ارجاع به روش‌ها زمانی استفاده کنید که کوتاه‌تر و واضح‌تر از لامبدا هستند.استفاده از Lambdas: اگر مختصرتر هستند یا مستندات بهتری ارائه می دهند، لامبدا را ترجیح دهید.

مزایای مراجع برای روش ها

  • مختصر بودن: ارجاع به روش ها مختصرتر از لامبدا است.
    مثال: افزایش مقدار در نقشه با استفاده از ادغام:

  • لامبدا: (شمارش، درج) -> شمارش + incr
    ارجاع به روش: Integer::sum

کاهش دیگ بخار
حذف پارامترهای بی فایده: پارامترهایی مانند count و incr حذف می شوند.
مثال:

map.merge(key, 1, Integer::sum);

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استفاده کارآمد از منابع برای روش ها

  • اسناد مفید در مورد Lambdas: در برخی موارد، نام پارامترها در لامبدا می تواند مستندات مفیدی را ارائه دهد.
  • تبدیل لامبدا به متدها: اگر یک لامبدا خیلی پیچیده است، کد را در یک متد جداگانه استخراج کنید و از ارجاع به آن متد استفاده کنید.

IDE ها و مراجع برای روش ها

  • پیشنهادات IDE: IDE ها اغلب پیشنهاد می کنند که لامبدا را با ارجاع به روش ها جایگزین کنید.
  • پذیرش پیشنهادات: به طور کلی، پیشنهادات را بپذیرید، اما به صورت موردی ارزیابی کنید.

استثناها و ملاحظات

  • لامبداهای مختصر تر: گاهی اوقات لامبدا مختصرتر از مراجع روش است.
  • مثال با کلاس:
  • مرجع روش: GoshThisClassNameIsHumongous::action
  • لامبدا: () -> اقدام()
  • تابع هویت: Function.identity() در مقابل x -> x

انواع مراجع برای روش ها

  • استاتیک: Integer::parseInt (lambda: str -> Integer.parseInt(str))
  • محدود: Instant.now()::isAfter (lambda: t -> Instant.now().isAfter

  • نامحدود: رشته::toLowerCase (lambda: str -> str.toLowerCase())
  • سازنده کلاس: TreeMap::new (lambda: () -> new TreeMap)
  • آرایه ساز: بین المللی[]::new (lambda: len -> new int[len])

نتیجه
اولویت برای مراجع برای روشها: از ارجاع به روش‌ها زمانی استفاده کنید که کوتاه‌تر و واضح‌تر از لامبدا هستند.
استفاده از Lambdas: اگر مختصرتر هستند یا مستندات بهتری ارائه می دهند، لامبدا را ترجیح دهید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا