کانال توسعه دهندگان سی شارپ
154 subscribers
32 photos
5 videos
6 files
87 links
اینجا از تجربیاتم توی برنامه نویسی می نویسم🙌
یک عدد دات نت کار
گیت هاب من:
https://github.com/hassanrafatjoo
Download Telegram
تقریبا یکی دو روز پیش بود که تصمیم گرفتم آموزش های فارسی سی شارپ رو بررسی کنم
یکیشون که قبلا ۱ میلیون بود شده بود ۸ میلیون!!!
از آموزش های خوب فارسی هست ولی برای خیلی هایی که از نظر مالی توان خرید دوره رو ندارن این حرکت خوبی نیست حقیقتا
بقیه هم که نصفه و نیمه چیزهایی رو یاد داده بودن
ان شاء الله به یه سطح خوبی برسم میخوام تمام آنچیزی که بلدم رو کامل‌رایگان به اشتراک بزارم
و اما نکته های امروز

امروز در خصوص DateOnly و TimeOnly یاد گرفتم
اگر قصد داریم فقط از تاریخ استفاده کنیم یا فقط از زمان از این دو تا استفاده می‌کنیم
برای مثال میخوایم دو تاریخ رو با هم مقایسه کنیم:

DateOnly date=new DataOnly(2024,9,30);

DateOnly specificdate=new DataOnly(2023,9,30);

if(specificdate>date)
{
Console.WriteLine("specific date is big");
}
else
{
Console.WriteLine("specific date is small")

}

در اینجا یه نمونه یه از کلاس DateOnlyساختیم و در سه پارامتر بهش تاریخ رو دادیم یکی اسمش گذاشتیم date و یکی دیگه specificdate و توی یه شرط بررسی کردیم که کدوم یک از این ها بزرگتر هستن


زمان :
TimeOnly time=new TimeOnly();

time=TimeOnly.Parse("8:00 AM");

Console.WriteLine(time.ToString("hh:mm:ss"))

اینجا هم یه نمونه از کلاس TimeOnly ساختیم و میخوایم که ساعت رو تبدیل کنیم به قالبی که میخوایم
در خط آخر و با استفاده از متد .ToString اومدیم محتوایی که در متغیر timeذخیره شده بود در خروجی کنسول نشون دادیم

برای نمایش ساعت و یا تاریخ ما قالب های متفاوتی داریم

مثلا واسه تاریخ:

d/M/y
حرف D برای روز حرف Mبزرگ برای ماه و y برای سال
میتونیم مثلا به صورت 5/2/03نشون بدیم تاریخ رو یا این که ۵/۲/۱۴۰۳

راجع بهش بیشتر باید خوند
صبر کلید رسیدن به هر چیزیه
دنبال سریع انجام شدن هیچ کاری نباشید خصوصا اوایل یادگیری صبر به خرج بدید. به وقتش واسه همه ما کار پیدا میشه، پروژه پیدا میشه
پایه یادگیری وقتی قوی باشه توی مدت زمان خیلی کمتری میتونی چیزای جدیدتری یاد بگیری
👍1
کانال توسعه دهندگان سی شارپ
چه تفاوتی بین : string name=""; و string name=string.Empty; وجود داره؟ هیچ تفاوتی بین این ها نیست و هر دو مقدار اون متغیر رو نال نگه میدارن اما استفاده از روش اول بیشتره تا دومی مزیت دومی این هست که برای اوایلی که داریم یاد میگیریم متوجه میشیم که در…
یکی از دوستان( مرتضی😎) نکته ای رو گفت که اتفاقا من فراموش کرده بودم و اینجا تصحیحش کردم

البته یکم که تحقیق کردم دیدم دقیقا همینجوریه

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

برای این که یه رشته مقدار نال بگیره از دات نت 5 به این طرف باید اینجوری انجام داد:

string? firstname;





یه علامت سوال در کنار کلمه string که نوع داده ای ما هست قرار میدیم
هنوز جی تی ای سان اندریاس بازی میکنم ما با هم فرق داریم😁

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

از مود ENB واسه گرافیک بگیر تا ماشین های ایرانی و خارجی

بعد طرف میگه اَه بازیای قدیمی چیه😐

هنوزم سان اندریاس سلطان بازی ها😂
👍1
ویژوال استودیو به باگ های عجیبی خورده برام فقط دعا کنید😄
جریان از اونجایی شروع شد که من هم قصد داشتم تم جدیدی روی ویژوال استودیو استفاده کنم و همین این که یه workload یا ابزار جدیدی به ویژوال استودیو اضافه کنم و مشکلات زیادی باهاش مواجه شدم و مجبور شدم از دوباره نصب کنم که باز هم به ارور خوردم و اومدم ویژوال استودیو جدید رو که نصب کرده بودم repair یا تعمیر کردم تا اوکی شد

اگر با مشکلاتی مثل side by side configuration error مواجه شدید در درجه اول مجموعه کتابخانه visual c++ رو نصب کنید اگر نشد بعدش دیگه بیوفتید به جون ویژوال استودیو😅
کانال توسعه دهندگان سی شارپ
https://downloadly.ir/elearning/video-tutorials/iamtimcorey-timcorey-c-mastercourse/ همچنین این رو هم میتونید اینجا رایگان دانلود کنید
یکی از چیزای جدیدی که فهمیدم اینه که tim corey به صورت رسمی به عنوان mvp در مایکروسافت پذیرفته شده جواب چت جی پی تی در این مورد:

کلمه MVP
مخفف Microsoft Most Valuable Professional
است. این عنوان به افرادی داده می‌شود که به طور قابل توجهی در جامعه‌ی فناوری مایکروسافت مشارکت کرده و دانش خود را با دیگران به اشتراک می‌گذارند. این افراد معمولاً کارشناسانی هستند که در زمینه‌های مختلف تکنولوژی مایکروسافت، از جمله توسعه نرم‌افزار، هوش مصنوعی، داده‌ها، امنیت، و دیگر حوزه‌ها تخصص دارند.
تو هر چی رو خوب بلد باشی به اندازه کافی واسش کار هست
اگه اول کار هستید حتی یه ذره هم ناامید نشید انقد تلاش کنید تا آخر به اون چیزی که میخواین برسید

بابت سی شارپ هم نگران نباشید کار فراوان هست توی ایران
👍1
یه زمانی روی رم ۲ ویژوال استودیو ۲۰۱۹ باز میکردم همزمان با ۱۰ ۲۰ تا تب باز داخل کروم 😎😂

از مجبوری باید می‌ساختم با این وضعیتش

پروژه های asp به سختی میشد روی لوکال اجرا کنی

اما تمام اون روزها گذشت و الان با راحتی بیشتری با ۱۶ گیگ رم اجراش میکنم

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

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

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

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

ورزش روزانه خیلی نیازه = 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