#csharptips resultados da pesquisa

Nenhum resultado para "#csharptips"

در دات نت، وقتی از FrozenDictionary ها میخوایم استفاده کنیم، پشت صحنه در Runtime بر اساس نوع دیتاستی که داره استفاده میشه، یه پیاده سازی مجزا داره برای همین ساختش هزینه بر هست، ولی خوانش دیتا سرعت عالی داره #CSharpTips


کلمه کلیدی volatile تو C# تضمین می‌کنه خوندن/نوشتن یه فیلد مستقیماً از حافظه اصلی انجام بشه و CPU کشش نکنه؛ یعنی visibility بین تردها بالا می‌ره اما atomicity نمی‌ده. فقط برای سناریوهای ساده‌ی sync روی فیلدها استفاده کن. #CSharpTips


Switch expressions simplify logic in C#. #DotNet #CSharpTips #Developer


اگر از Serilog استفاده می‌کنی، LogContext.PushProperty بهتر از enrich با static property هست؛ میتونی مقادیر کمکی رو به صورت thread-safe و scoped به تمام لاگ های اون scope اضافه کنی مثل CorrelationId SpanId TraceId #CSharpTips


قبلاً برای عملگرهای ریاضی باید overloadهای جدا یا switchهای بزرگ می‌نوشتی. الان می‌تونی روی genericها عملگرهای ریاضی داشته باشی بدون پیچیدگی. #CSharpTips


در c# 10 به بعد می‌تونی using های تکراری رو یک‌بار در یک فایل بنویسی و از کل پروژه حذفشون کنی. بهش Global Using میگن که باعث میشه کد تمیزتر بشه. #CSharpTips


از record برای مدل‌هایی که equatable هستند استفاده کن در record مقایسه ارزش‌محور (value-based equality) اتفاق میوفته ، که برای موجودیت هایی مثل Events, DTOها و Configها عالیه. #CSharpTips


استفاده از ArrayPool<T> برای کاهش تخصیص حافظه با ArrayPool.Shared.Rent() آرایه‌ها رو از pool می‌گیری و دوباره برمی‌گردونی. در اپلیکیشن‌های high throughput (مانند APIهای پرترافیک) باعث کاهش GC pressure و افزایش performance می‌شه. #CSharpTips


SemaphoreSlim بهتر از lock در async lock با async قابل استفاده نیست. SemaphoreSlim lightweight و async-friendly هست، و برای throttle کردن دسترسی به یک resource فوق‌العاده‌ست. #CSharpTips


با استفاده از Lazy<T> شیء رو فقط وقتی میسازه که واقعاً بهش نیاز هست، نه در زمان initialization. باعث کاهش مصرف حافظه و افزایش startup speed می‌شه. #CSharpTips


استفاده از Caller Info Attributes با [CallerMemberName], [CallerFilePath], [CallerLineNumber] می‌تونی اطلاعات محل فراخوانی متد رو بگیری، بدون نیاز به log دستی. برای logging و debugging عالیه #CSharpTips


در دات نت 8، ساختار جدیدی به نام InlineArray اضافه شده می‌تونی یه آرایه با اندازه ثابت داخل struct تعریف کنی، بدون تخصیص heap. کارایی خیلی بالا (zero allocation) مناسب برای پردازش داده‌های کوچک استفاده با attribute [InlineArray(n)] روی struct #CSharpTips


در دات نت 8، PeriodicTimer معرفی شده که جایگزین حلقه‌های با Task.Delay برای کارهای زمان‌بندی‌شده می‌شه مصرف حافظه کمتر بدون drift زمانی (زمان‌بندی دقیق‌تر) پشتیبانی از CancellationToken برای لغو راحت مناسب برای background serviceها و recurring tasks. #CSharpTips


در دات نت 9، در DataContractSerializer بهینه‌سازی بزرگی صورت گرفته؛ الان از source generation پشتیبانی می‌کنه یعنی serialization سریع‌تر، بدون reflection و با حافظه‌ی کمتر عالی برای سرویس‌های gRPC و WCF-style #CSharpTips


در .NET 9، کتابخانه‌ی System.Text.Json حالا از polymorphic serialization واقعی پشتیبانی می‌کنه می‌تونی typeهای فرزند رو با attribute‌ مثل [JsonDerivedType] ثبت کنی تا بدون custom converter به‌درستی serialize/deserialize بشن #CSharpTips


در ASP.NET Core (نسخه .NET 9) ویژگی MapStaticAssets اضافه شده که تحویل فایل‌های ایستا (CSS/JS/تصاویر) را برای SPA یا Blazor بهینه‌تر می‌کند: با کش‌بندی خودکار، فشرده‌سازی و fingerprinting. #CSharpTips


در دات نت 9 FrozenSet<T> و FrozenDictionary<TKey,TValue> بهبود پیدا کردن ساختشون زمان‌بره، ولی بعد از فریز شدن دسترسی فوق‌العاده سریع دارن. عالی برای lookupهای ثابت و داده‌های فقط‌خواندنی در اپ‌های بزرگ #CSharpTips


در دات نت 9، Params Span معرفی شده حالا می‌تونی از params ReadOnlySpan<T> در متدها استفاده کنی، بدون ساخت آرایه جدید. کاهش allocation، کارایی بالاتر و مخصوص سناریوهای performance-critical #CSharpTips


در .net9 Extension type معرفی شد می‌تونی به typeهای موجود مثل string یا DateTime، متد و property اضافه کنی بدون subclass یا helper static. کد expressive‌تر و سازمان‌یافته‌تر #CSharpTips


در .Net7 کلاس Generic math معرفی شد الان می‌تونی متدهای generic بنویسی که با هر نوع عددی (int, double, decimal) کار کنن، بدون کد تکراری کد تمیزتر، reusable و مناسب برای محاسبات عددی پیچیده #CSharpTips


Nenhum resultado para "#csharptips"
Nenhum resultado para "#csharptips"
Loading...

Something went wrong.


Something went wrong.


United States Trends