آموزش C# و .Net
1.55K subscribers
427 photos
325 videos
19 files
2.79K links
تعرفه تبلیغات :
https://t.me/+w-o6dHW5O31jMWNk

آیدی ادمین:
@ma_limbs
Download Telegram
💠 عضو جامع ترین کانال های توسعه فردی، روانشناسی و موفقیت شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

شامل موضوعات آموزشی زیر:

توسعه و رشد فردی
افزایش ثروت
هدف گذاری و مدیریت زمان
مهارت های اجتماعی، ارتباطی و فن بیان
روانشناسی و خودیاری
موفقیت
عادات موثر
سلامت و تغذیه سالم
موفقیت شغلی
عبارات تاکیدی
مدیریت اضطراب و خشم
روان درمانی CBT و ACT
شخصیت شناسی و تحلیل روانشناسی
انگیزشی
کودک درون
تکنیک های NLP
یوگا
افزایش حافظه
مدیتیشن
موفقیت تحصیلی
مطالعه موثر
افزایش اعتماد به نفس
افزایش تمرکز
تفکر مثبت
افزایش خلاقیت
نقل قول های انگیزشی

با کلیک بر روی لینک زیر عضو تمامی این کانال ها شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0
🔵 کوییز #سی_شارپ

🟣 موضوع : ‏اصول برنامه‌نویسی تابعی در C#

🟢 سوال :

‏کدام یک از موارد زیر یک روش برای جلوگیری از تغییر حالت داده‌ها در برنامه‌نویسی تابعی است؟

گزینه ۱:
‏استفاده از متغیرهای سراسری

گزینه ۲:
‏استفاده از کلاس‌های mutable

گزینه ۳:
‏استفاده از کلاس‌های immutable

گزینه ۴:
‏استفاده از حلقه‌های for

🔵 گزینه صحیح: 3

🟢 توضیح :

‏کلاس‌های immutable پس از ایجاد، قابل تغییر نیستند.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

لطفا ما رو به دیگران هم معرفی کنید...

آدرس کانال اصلی :
https://t.me/Tu_24

آدرس وبسایت:
https://Tutorial24.ir
💠 عضو جامع ترین کانال های توسعه فردی، روانشناسی و موفقیت شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

شامل موضوعات آموزشی زیر:

توسعه و رشد فردی
افزایش ثروت
هدف گذاری و مدیریت زمان
مهارت های اجتماعی، ارتباطی و فن بیان
روانشناسی و خودیاری
موفقیت
عادات موثر
سلامت و تغذیه سالم
موفقیت شغلی
عبارات تاکیدی
مدیریت اضطراب و خشم
روان درمانی CBT و ACT
شخصیت شناسی و تحلیل روانشناسی
انگیزشی
کودک درون
تکنیک های NLP
یوگا
افزایش حافظه
مدیتیشن
موفقیت تحصیلی
مطالعه موثر
افزایش اعتماد به نفس
افزایش تمرکز
تفکر مثبت
افزایش خلاقیت
نقل قول های انگیزشی

با کلیک بر روی لینک زیر عضو تمامی این کانال ها شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0
‏C# 5.0 با معرفی async و await انقلابی در برنامه‌نویسی ناهمگام ایجاد کرد و اجرای روان‌تر برنامه‌ها را ممکن ساخت.

‏در C# 6.0، شاهد ویژگی‌هایی چون expression-bodied members، string interpolation و null-conditional operators بودیم که کدنویسی را مختصرتر و خواناتر می‌کردند.

‏C# 7.0 با pattern matching و local functions انعطاف‌پذیری بیشتری به کد بخشید.

‏C# 8.0 نیز با معرفی nullable reference types، default interface methods و using declarations، گام‌های مهمی در جهت بهبود امنیت و قابلیت نگهداری کد برداشت. این تکامل مداوم، C# را به زبانی قدرتمند و منعطف تبدیل کرده است. 🚀💡

https://t.me/csharp7
‏در C# برای جلوگیری از تغییر لیست اصلی توسط توابع، دو راه وجود دارد:

‏`ReadOnlyCollection<T>` یک کلاس است که یک کپی فقط خواندنی از لیست اصلی می‌سازد. تغییرات در لیست اصلی، در این کپی اعمال نمی‌شود. 🛡️

‏متد `AsReadOnly()` یک wrapper ایجاد می‌کند که از تغییر لیست اصلی جلوگیری می‌کند. تغییرات در لیست اصلی، در این wrapper قابل مشاهده است. 👀

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

https://t.me/csharp7
🔵 با عضویت در لیست تلگرامی جامع آموزش زبان زیر عضو بی نظیرترین‌ و کامل ترین مجموعه آموزش زبان انگلیسی تلگرامی شوید:

🟢 پادکست، کوییز، گرامر، آیلتس، تافل، ویدیو، آموزش زبان به کودکان، اصطلاحات انگلیسی، زبان کنکور و ... :

https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
‏OpenCV رو میشناسی؟ 😎

‏باهاش میتونی تصاویر رو تو پایتون دستکاری کنی!

‏مثل تغییر سایز، برش و کلی کار باحال دیگه! ✂️🖼️

‏یه عالمه آموزش رایگان آنلاین هست، سرچ کن "OpenCV پایتون" و شروع کن!

#پایتون #OpenCV #پردازش_تصویر

https://t.me/python7ir
‏پایتون کار میکنی؟ 🐍
‏پروژه‌هات قاطی پاتی شده؟ 🤯

‏venv نجات‌دهنده‌ست! 😎
‏با venv پروژه‌هات رو ایزوله کن، کتابخونه‌هارو جدا نگه دار و از تداخل ورژن‌ها خداحافظی کن!

‏خیلی ساده‌س:
`python -m venv myenv`
‏بعدشم فعالش کن!
‏همین! 😉
#پایتون #آموزش #venv

https://t.me/python7ir
⚠️ با `#nullable enable` در C#، کامپایلر به شما کمک می‌کنه خطاهای NullReferenceException رو در زمان کامپایل پیدا کنید.

بهترین شیوه اینه که این قابلیت رو در پروژه‌های جدید فعال کنید و در پروژه‌های قدیمی، به تدریج و فایل به فایل فعالش کنید.

💡 یادتون باشه، فعال کردن این قابلیت به تنهایی کافی نیست، باید کدتون رو هم اصلاح کنید تا کامپایلر دیگه اخطار نده!

https://t.me/csharp7
🔵 دوست داری برنامه نویس حرفه ای بشی یا مهارت های کامپیوتری خودت رو افزایش بدی؟ با عضویت در لیست تلگرامی زیر در بی نظیر ترین کانال های برنامه نویسی ما عضو شوید:

🟢 پایتون، هوش مصنوعی، یادگیری ماشین، سی ++، سی شارپ، دات نت، نود جی اس، جاوا اسکریپت، شبکه، علم داده، پایگاه داده، sql، nosql ، مهارت های ICDL، سیستم عامل، لینوکس، فتوشاپ، گرافیک، اندروید، جاوا، ساخت اپلیکیشن موبایل، ری اکت، جی کوئری، php و laravel، دروس رشته کامپیوتر، کنکور کامپیوتر و ...

عضو لیست جامع شوید:

https://t.me/addlist/_UjG99eD_E4zYzhk
https://t.me/addlist/_UjG99eD_E4zYzhk
https://t.me/addlist/_UjG99eD_E4zYzhk
‏متدهای struct در C# به‌طور پیش‌فرض کپی می‌گیرند. ⚙️

‏اما با `in parameter` در متد struct، از کپی کردن مقدار جلوگیری می‌شود و performance بهبود می‌یابد. 🚀

‏`in` تضمین می‌کند مقدار struct در متد تغییر نکند. 🛡️

https://t.me/csharp7
‏structها در C# به‌طور پیش‌فرض Equality رو بر اساس "مقایسه‌ی سطحی" (shallow comparison) انجام میدن. یعنی تک‌تک فیلدهاشون با هم برابر باشن.

‏اما برای مقایسه‌ی عمیق‌تر (deep comparison) و کنترل بیشتر، اینترفیس `IEquatable<T>` رو پیاده‌سازی کنید.
```csharp
struct MyStruct : IEquatable<MyStruct>
{
public int Value { get; set; }

public bool Equals(MyStruct other)
{
return Value == other.Value;
}
}
```
‏با این کار، منطق دلخواه خودتون رو برای مقایسه تعریف می‌کنید. ⚙️🧰

https://t.me/csharp7
💠 عضو جامع ترین کانال های توسعه فردی، روانشناسی و موفقیت شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

شامل موضوعات آموزشی زیر:

توسعه و رشد فردی
افزایش ثروت
هدف گذاری و مدیریت زمان
مهارت های اجتماعی، ارتباطی و فن بیان
روانشناسی و خودیاری
موفقیت
عادات موثر
سلامت و تغذیه سالم
موفقیت شغلی
عبارات تاکیدی
مدیریت اضطراب و خشم
روان درمانی CBT و ACT
شخصیت شناسی و تحلیل روانشناسی
انگیزشی
کودک درون
تکنیک های NLP
یوگا
افزایش حافظه
مدیتیشن
موفقیت تحصیلی
مطالعه موثر
افزایش اعتماد به نفس
افزایش تمرکز
تفکر مثبت
افزایش خلاقیت
نقل قول های انگیزشی

با کلیک بر روی لینک زیر عضو تمامی این کانال ها شوید:

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0

➡️ https://t.me/addlist/AX8uaLK6gE1jNzg0
🔵 کوییز #سی_شارپ

🟣 موضوع : ‏معرفی و کاربرد Entity Framework

🟢 سوال :

‏کدام یک از موارد زیر یک روش برای به‌روزرسانی پایگاه داده در Entity Framework است؟

گزینه ۱:
‏استفاده از دستورات SQL

گزینه ۲:
‏استفاده از Migrations

گزینه ۳:
‏استفاده از متدهای ADO.NET

گزینه ۴:
‏استفاده از توابع بازگشتی

🔵 گزینه صحیح: 2

🟢 توضیح :

‏Migrations برای به‌روزرسانی پایگاه داده در Entity Framework استفاده می‌شود.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

لطفا ما رو به دیگران هم معرفی کنید...

آدرس کانال اصلی :
https://t.me/Tu_24

آدرس وبسایت:
https://Tutorial24.ir
🔵 با عضویت در لیست تلگرامی جامع آموزش زبان زیر عضو بی نظیرترین‌ و کامل ترین مجموعه آموزش زبان انگلیسی تلگرامی شوید:

🟢 پادکست، کوییز، گرامر، آیلتس، تافل، ویدیو، آموزش زبان به کودکان، اصطلاحات انگلیسی، زبان کنکور و ... :

https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
‏C# از نسخه 9 به بعد، قابلیتی به نام Top-Level Statements داره.
‏دیگه لازم نیست یه برنامه کنسولی ساده رو حتماً داخل namespace و class تعریف کنید.

```csharp
‏// کد قبلی
namespace MyApp;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}

‏// کد جدید
Console.WriteLine("Hello World!");
```

‏حتی می‌تونید از using statement هم استفاده کنید:
```csharp
using System;
Console.WriteLine("Hello World!");
```
‏به همین سادگی! 😎

https://t.me/csharp7
🔵 با عضویت در لیست تلگرامی جامع آموزش زبان زیر عضو بی نظیرترین‌ و کامل ترین مجموعه آموزش زبان انگلیسی تلگرامی شوید:

🟢 پادکست، کوییز، گرامر، آیلتس، تافل، ویدیو، آموزش زبان به کودکان، اصطلاحات انگلیسی، زبان کنکور و ... :

https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
https://t.me/addlist/hK74E7joz0ZiOGY0
‏`ref struct`ها در C# از تخصیص heap جلوگیری می‌کنند. 🗑️

‏اما در iteratorها (مانند `yield return`) نمی‌توانید از `ref struct` استفاده کنید. 🚫 چون iteratorها state machine هستند و ممکن است بین `yield`ها، `ref struct` از scope خارج شود.

‏بنابراین، کامپایلر اجازه نمی‌دهد `ref struct` را در iterator به کار ببرید. ⚙️

https://t.me/csharp7
‏متد `Main` در C# می‌تونه آرگومان بگیره. ⚙️

‏این آرگومان به صورت یک آرایه از رشته‌ها (`string[] args`) به متد پاس داده می‌شه.

‏این آرایه شامل آرگومان‌هایی هست که هنگام اجرای برنامه از طریق خط فرمان وارد شدن. می‌تونید از این آرگومان‌ها برای پیکربندی برنامه یا تعیین رفتارهای مختلف استفاده کنید. 💻

‏به این الگو، Args pattern گفته میشه.

https://t.me/csharp7
‏در C#، قرارداد نام‌گذاری PascalCase برای نام کلاس‌ها، متدها و پراپرتی‌ها رایج است. این به این معناست که حرف اول هر کلمه در نام، با حرف بزرگ شروع می‌شود.

‏مثال برای نام کلاس:
public class CustomerAccount
{
// ...
}


‏مثال برای نام متد:
public void CalculateTotalPrice()
{
// ...
}


‏مثال برای نام پراپرتی:
public string CustomerName { get; set; }


‏این قرارداد نام‌گذاری به خوانایی بهتر کد و درک سریع‌تر ساختار آن کمک می‌کند. 📝

https://t.me/csharp7
🔵 دوست داری برنامه نویس حرفه ای بشی یا مهارت های کامپیوتری خودت رو افزایش بدی؟ با عضویت در لیست تلگرامی زیر در بی نظیر ترین کانال های برنامه نویسی ما عضو شوید:

🟢 پایتون، هوش مصنوعی، یادگیری ماشین، سی ++، سی شارپ، دات نت، نود جی اس، جاوا اسکریپت، شبکه، علم داده، پایگاه داده، sql، nosql ، مهارت های ICDL، سیستم عامل، لینوکس، فتوشاپ، گرافیک، اندروید، جاوا، ساخت اپلیکیشن موبایل، ری اکت، جی کوئری، php و laravel، دروس رشته کامپیوتر، کنکور کامپیوتر و ...

عضو لیست جامع شوید:

https://t.me/addlist/_UjG99eD_E4zYzhk
https://t.me/addlist/_UjG99eD_E4zYzhk
https://t.me/addlist/_UjG99eD_E4zYzhk