سیشارپ آپدیتهای خود را در ادامه فعالیتهایش جهت سادهتر کردن کدها و بهبود در فضاهای اشغال شده توسط کد ارائه میکند.
برخی از ویژگی های C# 12 در preview ها معرفی شدهاند و میتوانید این ویژگیها را با استفاده از Visual Studio 17.6 Preview یا NET 8 preview. امتحان کنید.
مواردی که در C#12 Preview معرفی شدهاند:
۱- ویژگی Primary constructors برای کلاسها و ساختارهای غیر رکورد.
شما اکنون میتوانید primary constructors را در هر کلاس و ساختاری ایجاد کنید. Primary constructors دیگر محدود به record types نیستند. پارامترهای primary constructor در scope بدنه کلاس هستند.
با استفاده از (...)this داخل کلاس، میتوانید از قابلیت primary constructor استفاده کنید.
مثال:
Public Student(int id, string name) : this(id, name, Enumerable.Empty<decimal>()) { }
اضافه کردن primary constructor به یک کلاس، از تعریف ضمنی constructor بدون پارامتر جلوگیری میکند. ۲- مقدار پیش فرض برای پارامترهای عبارت lambda
سیشارپ قبلا این امکان را فراهم کرده بود که برای پارامترهای ورودی متد مقادیر پیشفرض تعریف کنید. این امکان برای lambda نیز فراهم شده است. مقدار پیشفرض برای پارامترهای عبارت lambda به شما این امکان را میدهد که بتوانید پارامترهایی را که در عبارت lambda استفاده میشوند، با مقدار پیشفرض مقداردهی کنید.
۳- استفاده از alias برای هر نوعی
در ورژنهای قبلی سیشارپ این امکان وجود داشت که شما هنگام استفاده از یک کلاس، به جای استفاده مستقیم از آن کلاس، در قسمت using ها، کلاس مورد نظر خود را به صورت مستقیم using کنید و به آن نامی دلخواه بدهید، سپس داخل کد خود برای دسترسی به کلاس مورد نظر از آن نام دلخواه که موقع using معرفی کردهاید استفاده کنید.
در این ورژن، شما میتوانید از دستورالعمل using alias برای هر نوعی، نه فقط named types، استفاده کنید. این بدان معناست که شما میتوانید alias های semantic برای tuple types، array types، pointer types یا دیگر unsafe types ایجاد کنید.
مثال:
using Measurement = (string Units, int Distance);
🔗 نسخه کامل این مقاله را میتوانید در اینجا مطالعه کنید. 🔗 لینک مقاله در ویرگول
⁉️ برای بحث و تبادل نظر فنی در مورد این پست، نظرات خود را با ما در قسمت کامنتها به اشتراک بگذارید.
#نگار_قاسمی (لینکدین)
کانال تلگرام:
@SoftwarePhilosophy
______