ویرگول
ورودثبت نام
میلاد جعفری
میلاد جعفری
میلاد جعفری
میلاد جعفری
خواندن ۱ دقیقه·۴ ماه پیش

ساده‌سازی کد با قدرت Deconstruction در #CSharp

در دنیای توسعه نرم‌افزار، نوشتن کدی که هم خوانا باشد و هم قابل نگهداری، یک هنر است. یکی از ویژگی‌هایی که زبان #CSharp در اختیار ما گذاشته، قابلیت Deconstruction است؛ راهی هوشمند برای استخراج مقادیر از توابع، اشیاء، رکوردها و حتی دیکشنری‌ها.

👨‍💻 Deconstruction چیست؟ به جای نوشتن چند خط برای استخراج مقادیر از Tuple یا Property‌های یک شیء، با Deconstruction می‌توانیم همه چیز را در یک خط انجام دهیم:

var (city, population, area) = QueryCityData("New York City");

📦 کجا می‌توان استفاده کرد؟

  • Tupleها

  • Recordها

  • کلاس‌های شخصی‌سازی شده با متد Deconstruct

  • حتی KeyValuePair در Dictionary‌ها

🎯 مزایا

  • خوانایی بهتر کد

  • نگهداری ساده‌تر

  • تمرکز روی مقادیر مورد نیاز (Discards با _)

🚀 نمونه کاربردی: اگر تنها به برخی مقادیر Tuple نیاز دارید، کافیست از _ برای نادیده گرفتن سایر عناصر استفاده کنید:

var (_, _, _, pop1960, _, pop2010) = QueryCityDataForYears("NYC", 1960, 2010); Console.WriteLine($"Population change: {pop2010 - pop1960:N0}");

🧩 برای کلاس‌های خودتان هم می‌توانید متد Deconstruct بنویسید تا قابلیت تجزیه‌پذیری داشته باشند. حتی با Extension Method می‌توان این ویژگی را به کلاس‌هایی افزود که خودتان ننوشته‌اید!

توسعه نرم‌افزار
۰
۰
میلاد جعفری
میلاد جعفری
شاید از این پست‌ها خوشتان بیاید