کانال توسعه دهندگان سی شارپ
154 subscribers
32 photos
5 videos
6 files
87 links
اینجا از تجربیاتم توی برنامه نویسی می نویسم🙌
یک عدد دات نت کار
گیت هاب من:
https://github.com/hassanrafatjoo
Download Telegram
حتما در برنامه خودتون تفریح و استراحت بزارید

خیلی سنگین کار کردن باعث میشه به مرور زمان دچار فرسودگی شغلی بشید

امروز که من هیچی نه ویدیو دیدم و نه کار کردم

حداقل یه روز در هفته باید اختصاص داده بشه به تفریح

ورزش روزانه خیلی نیازه = 15 دقیقه پیاده روی یا دویدن،اگه بتونی بری باشگاه چه بهتر، یا کوهنوردی

وقتی تفریح میکنی و انرژیتو تخلیه میکنی ذهنت آماده یادگیری چیزهای جدیدتر هم میشه
درود بر داشم Tim Corey

آرایه ها رو که همه باهاش آشنا هستید

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

بعدا توی کانال راجع به مجموعه های جنریک و غیر جنریک صحبت میکنیم

و اما سورس کد و بعد توضیح:
string Names="MohammadReza,Hassan,Reza";

string [ ] firstNames=string.Split(',')

Console.WriteLine(firstNames[1]);


ابتدا یک متغیر تعریف میکنیم و اسم محمدرضا و حسن و رضا رو داخلش قرار میدیم و به وسیله کاما از هم جداشون کردیم. میخوایم هر اسم رو در یه اندیس جداگانه از آرایه قرار بدیم

در خط دوم اومدیم یه آرایه از نوع string تعریف کردیم که میخوایم اسامی در اون نگهداری بشه حالا جلوی اون اومدیم از یکی از متدهای نوع داده ای استرینگ که Split باشه استفاده کردیم. کارش اینه میاد مقادیری که رشته داره رو با استفاده از یک کاما جدا میکنه و بعد درون هر کدوم از اندیس های آرایه قرار میده

و در خط آخر میخوایم که واسمون اندیس یکم اون آرایه که Hassan هست رو به ما نمایش بده که این کار رو هم انجام میده

در کل روش خیلی جالبی نیست چیزی که مدرس میگفت این بود برای کار با فایل های csv استفاده میشه. فایل های csv اینجوری هستن که مقادیرشون با استفاده از کاما از همدیگه جدا میشه
توی تصویر اونجایی که نوشته شده separator احتمالا توی برنامه هایی مثل رایدر، پایچارم و ممکنه حتی توی vscode هم دیده باشید

این بهش میگن راهنما یا hint که بهتون کمک میکنه که چه چیزی رو به عنوان پارامتر باید قرار بدید


برای فعالسازی چنین قابلیتی در ویژوال استودیو:

روی منوی Tools کلیک کنید و بعد روی Options کلیک کنید

بعد به دنبال TextEditor باشید روی اون کلیک کنید و بعد#C رو انتخاب کنید

وارد قسمت Advanced بشید و تیک گزینه :

Display inline parameter name hints

رو فعال کنید تا از این به بعد براتون نشون بده
یه قابلیت جدیدی که توی برنامه Snipping Tool که برای عکس گرفتن از صفحه استفاده میشه این هستش که شما میتونید متن های داخل یک تصویر رو پیدا کنید و اگر نیاز داشتید بهشون کپی شون کنید

اول این که برنامه رو از مایکروسافت استور دانلودش کنید

عکس خودتون رو که گرفتید واردش بشید

و مشابه چیزی که توی این تصویر می بینید روی اون آیکون که اسمش Text Actions هست کلیک کنید

بعد از تحلیل عکس بهتون جاهایی که ازش قابل کپی هست رو نشون میده

و به راحتی میتونید متن هایی که از یه عکس لازم دارید رو کپی کنید
1
به هیچ وجه نگران نباشید اگه اوایل کار کدهایی که می نویسید خوب نیست هیچ نگران نباشید

کم کم یاد میگیرید بهتر می نویسید

یک برنامه رو به چندین روش میشه نوشت نگران نباشید
2
youtube.com/@kalagar2
از کانال های خوب در یوتیوب
مهندس نرم افزار بودن خیلی فرق داره با صرفا برنامه نویس عادی بودن!
👍1🤔1
تعصب داشتن بی مورد خوب نیست
یه وقت می بینی سی شارپ توی کاری که میخوای انجام بدی بهتره یه وقت هم پایتون گزینه بهتری هست یا زبان های دیگه ای
ابزارهایی که مثلا واسه ربات تلگرام هست توی پایتون بیشتره تا نسبت به سی شارپ
یا توی هوش مصنوعی قطعا پایتون گزینه اول هست
ولی این که بخوای به زور به بقیه بقبولانی که حتما ابزاری که تو میگی بهتره بدون دلیل و منطق هم خوب نیست. مثلا اگر میگیم برای ساخت برنامه ویندوزی سی شارپ مناسب تر هست به فلان دلیل و فلان دلیل و... بهتر هست نسبت به بقیه

اینجوری طبیعتا خیلی بهتره و انتخاب های بهتری خواهیم داشت
حاجی شوخی شوخی این دوره های گیت دات آی آر باعث شد من مهارت شنیداری زبانمم قوی تر شه😂❤️
از دات نت پنج به بعد نیازی نیست که شما زمان ساختن یک نمونه حتما اینجوری کنید:
List<string> names=new List<string>();

میتونید اینجوری بنویسید:
List<string> names=new();

دیگه نیازی نیست بعد از کلمه new دوباره اسم اون کالکشن یا کلاسی که میخواید ازش نمونه بسازید رو وارد کنید
🥰5
فردا یادم باشه یه چند تا نکته جدید توی سی شارپ بگم
اکثر ترس های اول کار همش واسه اینه که نمیدونی الان دقیقا باید واسش چیکارکنی

آموزش های tim corey از یه بابت خیلی خوب هست این که برای هر پروژه ای اول میاد میگه شما باید تحلیل کنی میخوای چیکار کنی

اول کلیت کار رو در نظر میگیری بعد میای جزئی تر مسئله رو برای خودت می نویسی

مثلا میخوای یه سایت بسازی که تحلیل های بورس و ارز دیجیتال انجام بده خب قاعدتا چنین چیزی یک پروژه خیلی بزرگه و طبیعی هست که اصلا متوجه نشی که باید چیکار کنی

کاری که باید کنی مثلا اینجوریه:

خب من قصد دارم یه سایتی بسازم مثل تریدینگ ویدیو که قراره روی یک چارت تحلیل های ارزها رو نشون بده

قراره در چه بازهای زمانی رشد بازار یا افول رو نشون بده؟ آفرین به صورت روزانه، 15 روزه، یک ماهه و...

خب آیا قراره کاربر مثلا این تحلیل ها رو ذخیره کنه یا نه؟ اگر میخواد ذخیره کنه که دفعه بعد به این تحلیلش دسترسی داشته باشه پس من باید از فلان ابزار استفاده کنم از فلان کتابخونه استفاده کنم


و همینجوری برای خودت مسئله رو کوچک تر و کوچک تر میکنی تا کار به جایی میرسه که دیگه قشنگ برات واضح میشه میخوای چیکار کنی

خصوصا اگر روی کاغذ بنویسی خیلی بهتر از اینه بخوای با ابزارهای دیجیتال بکشی

حتی توی بحث دیتابیس میتونی دیاگرام کلی دیتابیس و ارتباط بین جدول ها رو بنویسی روی کاغذ و خیلی بهتر میتونی تحلیل کنی

توی نوشتن روی کاغذ یه جوریه که راه حل های مختلفی میاد به ذهنت

به خدا همینه من خودم انقد بزرگ میدونستم واسه خودم همین موضوع رو دیدم واقعا ترس خیلی الکی هست

تجزیه و تحلیل مسئله ینی به همین سادگی...
اصل DRY در سی شارپ چیه؟

اصل DRY یا Do'nt Repeat Yourself به این اشاره میکنه که شما نباید کارهای تکراری انجام بدید که در واقع میتونیم مثال متدها و کلاس ها رو واسش در نظر بگیریم

به جای این که ما کدهای زیادی بنویسیم که هم خوانایی کد بیاد پایین تر و هم این که دیباگ کردن کدها سخت تر بشه میایم کلاس ها و متدهایی برای اون در نظر میگیریم

مثلا:
Console.WriteLine("Hello User");
Console.WriteLine("Thanks for Using this Program");


تبدیل میکنیم به اینجوری:
public static void SayHello()
{
Console.WriteLine("Hello User");
Console.WriteLine("Thanks for Using this Program");
}



و حالا از این متد توی جاهای دیگه ای استفاده میکنیم به عنوان مثال این متد رو اومدیم توی کلاس Sample ساختیم و حالا میخوایم ازش توی کلاس Program.cs استفاده کنیم پس نیاز هست که ابتدا فضای نام کلی برنامه رو در اون کلاس وارد کنیم که البته اگر کلاس از نوع public باشه در کلاس program.cs نشون داده میشه و راحت میتونید فضای نام رو مورد استفاده کنید

بعد اینجوری می نویسیم:
Sample.SayHello();


و نیازی هم نیست که بخواید داخل console.writeline قرارش بدید چون دیگه در درون خودش ما اومدیم کاری کردیم که اون دو تا خط توی خروجی نمایش داده بشه

ما هر موقع بدونیم که اصلا به اینا چی میگن این خودش یه جور انگیزه دهنده هست این رو کمتر جایی دیدم بگن.البته خیلی راحته ها ولی خب باید بازم تکرار بشه تا در ذهن ماندگار بشه
👍1
مایل هستید کم کم وارد مسائل شی گرایی بشیم؟
یا حالا هر مبحثی که میدونید واستون جا نیوفتاده
👍1
تکامل ویندوز ها از ویندوز ۱ تا ویندوز ۱۱
خیلی برام جالب بود که کم کم مایکروسافت کاربرها رو سوق میداد به سمت ویندوز جدیدی که ارائه کرده بود
از بین همه این ها ویستا و ۸ منفورترین و ایکس پی و ۷ و ۱۰ خیلی عالی بودن

https://youtu.be/WsjMEBUKttY?si=DjYu1XZvITVk_0Pa
1
مباحث بک اند چون زیاد هستن باید اول مباحث قبلی رو خوب یاد بگیری و هضم کنی و بعد بری سراغ مطلب بعدی چون اگر مدام بخوای چیزی یاد بگیری رسما قاطی میکنی همه چی رو با هم
👍2
هیچ گاه به آموزش های دانشگاه اعتنا نکنید
خودتون خودآموز برید جلو و دانشگاه رو فقط به عنوان یه جایی ببینید که قراره با افراد جدیدی آشنا بشید و شبکه سازی کنید

کار واقعی زمانی هست که خود شما وارد انجام پروژه ها بشی نه این که یه سری تئوری ها حفظ کنی و نهایتا چیزی برای ارائه نداشته باشی!
👍4
مسخره ترین چیز دنیا = وردپرس (:
👎2🤮2👍1
کانال توسعه دهندگان سی شارپ
مسخره ترین چیز دنیا = وردپرس (:
به شرطی خوبه که تو php و چیزای راجع به برنامه نویسی توی وردپرس بلد باشی وگرنه دستت خیلی بستس برای تغییر
هوش مصنوعی deepseek رو احتمالا اسمش شنیدید خوبیش اینه هم رایگان هست هم این که با هزینه های کمتری راه اندازی شده

در حالت Deep think عملکردش خیلی خوبه 👌
👍2👎1