#csharptips resultados da pesquisa
در دات نت، وقتی از 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
Something went wrong.
Something went wrong.
United States Trends
- 1. Colts 32.7K posts
- 2. Philip Rivers 14.4K posts
- 3. #WWERaw 19.4K posts
- 4. Purdy 13.1K posts
- 5. Kittle 7,110 posts
- 6. #FTTB 4,693 posts
- 7. Niners 6,250 posts
- 8. Alec Pierce 3,258 posts
- 9. #SFvsIND 1,632 posts
- 10. Jennings 14.9K posts
- 11. #ForTheShoe 1,990 posts
- 12. Adam the Woo 1,168 posts
- 13. #WLRDeluxe 24.9K posts
- 14. Tyler Warren 2,111 posts
- 15. Pelicans 3,863 posts
- 16. Kansas 32.6K posts
- 17. Missouri 15.2K posts
- 18. Jonathan Taylor 2,640 posts
- 19. Greenland 66.9K posts
- 20. CJ West N/A