کدهک
1.92K subscribers
1.3K photos
7 videos
1 file
681 links
آموزشگاه تخصصی دات نت

https://codehaks.com

لینکدین :
https://www.linkedin.com/in/codehaks

یوتیوب:
https://www.youtube.com/@codehaksfa

ارتباط با مدیر :
Admin: @codehak
Email: ghods.hakim@hotmail.com
call: 09380146555
Download Telegram
با Task.FromResult می توانید عملیاتی که همزمان (Sync) انجام میشود به صورت Async جا بزنید!

تصور کنید که یک جعبه جادو دارید که می‌تواند به سرعت یک عدد تولید کند، (مثلا 42). شما می‌خواهید از این جعبه جادو در یک برنامه استفاده کنید و می‌خواهید به نظر بیاید که دارید کاری ناهمگام انجام می‌دهید (مثل انتظار برای مدت طولانی)، حتی اگر نتیجه را فوراً دریافت می‌کنید. برای اینکار می توانید از Task.FromResult استفاده کنید.

بنابراین، به زبان ساده‌تر، Task.FromResult روشی است برای تظاهر به اینکه چیزی ناهمگام است در حالی که در واقعیت به سرعت و همزمان اتفاق می‌افتد.

این روش برای حفظ ساختار کد هنگام کار با عملیات‌های Sync و Async در#C مفید است.

ممکن است کدی داشته باشید که در صورت درستی شرط عملیات Sync و در حالت دیگر از Async استفاده می کند ولی برای همه متد باید از خروجی Task استفاده کنید.
👍92
کنفرانس سالانه دات نت روز سه شنبه ساعت 19:30 به وقت ایران آغاز میشود.

این رویداد به مدت سه روز برگزار میشود و قرار است از آخرین نسخه دات نت رو نمایی شود.

دات نت 8 به همراه 12.0 #C و ASP.NET Core 8.0 عرضه میشود و نسخه نهایی ابزاری مثل Blazor و MAUI و Entity Framework هم در این بسته قرار دارد.

دات نت 8 پشتیبانی 3 ساله (LTS) دارد و مایکروسافت از همه توسعه دهندگان دات نت درخواست میکند از نسخه قبلی به 8 آپدیت کنند.

https://www.dotnetconf.net
👍18🔥9
دات نت از کامپایل just-in-time استفاده می‌کند، جایی که کدهای #C به زبان میانی (IL) کامپایل شده و سپس با JIT-compiler به کد ماشینی در زمان اجرا تبدیل می‌شوند. به این ترتیب کد برنامه به ماشین نهایی مستقیم وابسته نیست و JIT می تواند بر اساس نوع ماشین خروجی را بهینه کند.

اما موارد زیادی است که استفاده از AOT یک نیاز است چون حجم نهایی برنامه را کاهش داده و پرفورمنس برنامه در زمان اجرا افزایش می یابد. برنامه های موبایل و سرور می توانند از AOT بهره ببرند.

در نسخه 8 دات نت با به کار گیری AOT حجم کانتینر های دات نت تا 8 مگابایت کم شده و حافظه و زمان بارگذاری نیز کاهش یافته است.

#dotnetconf2023
👍26🔥6
آموزش Delegates، Func و Action در #C

▶️ https://youtu.be/vN7ntZ7zQSM

#csharp #dotnet
👍241
آشنایی با Stream ها در #C - کار با FileStream و روش‌های خواندن فایل

▶️https://youtu.be/C7dCtW-juew

#dotnet #csharp #FileStream
6🔥1
‏CSnakes یک کدساز و ران‌تایم برای دات نت است که به شما امکان می‌دهد کدهای پایتون را با پرفورمنس بالا در پروژه‌های دات‌نت اجرا کنید، بدون نیاز به REST، HTTP یا میکروسرویس‌ها.

این ابزار می‌تواند از روی پایتون کد#C تمیز و خوانا تولید کند که در هر پروژه دات‌نت قابل استفاده است.

با کمک این ابزار دسترسی به کتابخانه های پایتون به خصوص در بخش هوش مصنوعی در سی شارپ ساده میشود.

در این ویدیو به معرفی این ابزار می پردازیم و یک چت با مدل هوش مصنوعی از روی کدهای ساخته شده پیاده میکنیم.


▶️https://youtu.be/LLN4YgjSwyE
👍86🔥4
در این ویدیو به معرفی زبان برنامه‌نویسی Zig پرداختم و یک برنامه‌ی ساده برای تبدیل تصاویر رنگی در فرمت BMP به سیاه و سفید نوشتم. این پروژه رو هم با Zig و هم با #C پیاده‌سازی کردم تا تفاوت‌ها و امکانات هر زبان رو بررسی کنیم.

▶️https://youtu.be/iuzczBpmy7A

#dotnet #csharp #ziglang
👍6🔥2
Forwarded from Code With HSN
ویدئو جدید منتشر شد 🚀
موشکافی dotnet و بررسی 10 ترفند برای مصرف کمتر یا بهتر حافظه؛ از مشکلات خطرناک MemoryStream بگیر تا ترفندهای مخفی LINQ و اسرار ValueTask، همه‌چیز رو براتون شکافتم! هدف اینه که دست خطی داشته باشید که از مموری کمتر استفاده کنه و آگاهانه از خیلی چیز ها استفاده کنید

🎯 مواردی که یاد میگیرید:

1. بهینه‌سازی حافظه در #C 🚀
مشکلات MemoryStream و راه‌حل با RecyclableMemoryStream
جلوگیری از Memory Leak و مدیریت حافظه

2.دو کلاس ValueTask vs Task ⚡️
چه زمانی از ValueTask استفاده کنیم؟
مزایا و معایب هرکدام برای Performance

3. پشت‌پرده async/await 🔍
نحوه عملکرد IAsyncStateMachine
کلاس Delegateها چه مشکلاتی ایجاد می‌کنند؟

4. مشکلات Boxing 📦
چه زمانی Structها Boxing می‌شوند؟
تأثیر آن روی Performance و راه‌های جلوگیری

5. بهینه‌سازی LINQ و List 💡
مصرف حافظه در LINQ و راه‌های کاهش آن
ترفندهای افزایش سرعت در Listها

6. بررسی ObjectPool و Generic 🛠
پیاده‌سازی ObjectPool برای کاهش تخصیص حافظه
مزایای استفاده از INumber و Genericها

از اینجا مشاهده کنید: https://youtu.be/YM86MO0ohYg?si=qX5ZbHXWQ-6_oqhR
🔥9👍51