CodeShot
C# 13 Features1 دقیقه مطالعه

ویژگی‌های جدید C# 13

مجموعه بهبودهای C# 13 (همراه با .NET 9) با تمرکز بر Performance، کاهش Boilerplate و افزایش خوانایی کد.

چرا مهم است؟

این نسخه تمرکز اصلی‌اش روی Performance و Developer Experience است — چند تغییر کوچک که در پروژه‌های واقعی سرعت و امنیت کد را بالا می‌برد.

مهم‌ترین قابلیت‌ها

۱. params Collections

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

void Print(params List<string> names) { }

کاربرد: انعطاف بیشتر هنگام ارسال مجموعه‌ای از داده‌ها.

۲. Lock Object (بهبود Synchronization)

نوع جدیدی برای قفل‌گذاری به‌جای object، با استفاده از System.Threading.Lock.

private readonly Lock _lock = new();
lock (_lock) { /* Critical Section */ }

مزیت: عملکرد بهتر، Type-safe و مناسب برنامه‌های Multi-thread.

۳. Escape Sequence جدید \e

اضافه شدن Escape Character مربوط به ANSI Escape؛ کاربرد اصلی رنگی‌کردن خروجی Console.

۴. Partial Properties

مانند Partial Method، اکنون Property هم می‌تواند Partial باشد — کاربرد اصلی در Source Generatorها.

partial class User
{
    public partial string Name { get; set; }
}

۵. Ref و Unsafe در Iteratorها

اکنون قابلیت‌های ref و unsafe در Iteratorها با محدودیت کمتری قابل استفاده‌اند — Performance بیشتر، Copy داده‌ها کمتر.

۶. بهبود Overload Resolution

کامپایلر در انتخاب متد بهترین و هوشمندتر عمل می‌کند: خطاهای Ambiguous کمتر، پیش‌بینی‌پذیری بیشتر.

۷. بهبود عملکرد Compiler

Build و Compile بدون تغییر در کد، در بسیاری پروژه‌ها سریع‌تر می‌شوند.

نکته کلیدی: C# 13 همراه با .NET 9 عرضه شده و تمرکز اصلی روی Performance و Developer Experience است؛ مهم‌ترین ویژگی‌ها: params Collections، System.Threading.Lock، Partial Properties، Escape Sequence جدید و بهبود Iteratorها.

خلاصه

  • C# 13 همراه با .NET 9 منتشر شده و تمرکزش Performance و کاهش Boilerplate است.
  • مهم‌ترین اضافه‌ها: params Collections، System.Threading.Lock و Partial Properties.
  • بهبود Overload Resolution و Compiler، پروژه‌های موجود را بدون تغییر کد سریع‌تر می‌کند.

حالا امتحان کن

🧩آزمون ویژگی‌های جدید C# 136 سؤال · نمره قبولی 60٪
این مطلب مفید بود؟
نشان کردن
مشاهده در Concept Hub ←