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

شخصا خودم تا متوجه نشم مثلا فلان متد یا اکستنشن متد پارامترهایی که میگیره چیه مغزم آروم نمیگیره😅 یا مثلا چرا فلان پارامتر رو باید به حالت نال قرار بدیم

نگران فراموش کردن هم نباشید شما اگر روزانه و پیوسته یاد بگیرید یادتون نمیره
👍21
اگر قراره باشه میت برگزار کنم میتونید صبح ها شرکت کنید؟( خودم بیشتر صبح ها میتونم برگزار کنم)
Anonymous Poll
33%
آره میتونم
33%
نه نمیتونم
33%
دیدن نتایج
1
سلام دوستان بالاخره منم وصل شدم😂❤️
1
کد نمیومد به گوشی با ایمیل که توی احراز هویت دو مرحله ای بود تونستم بیام
1
توی این اوضاع اما من امید خودم رو از دست ندادم و بیشتر رفتم سی شارپ و asp core خودم رو قوی کردم

پیوسته برید جلو حتی اگر شرایط بد باشه
1👍1
اینجوری که من دارم می بینم فکر کنم فقط من بودم که این چند روز نت نداشتم ظاهرا که همه داشتن و ما رکب خوردیم😂
3
کانال توسعه دهندگان سی شارپ
چند تا پروکسی برای تلگرام ویندوز: https://t.me/proxy?server=195.254.165.4&port=13&secret=EERighJJvXrFGRMCIMJdCQ https://t.me/proxy?server=195.254.165.140&port=9443&secret=EERighJJvXrFGRMCIMJdCQ https://t.me/proxy?server=195.254.165.20&port=9443&secret=E…
دوستان توجه کنید پروکسی هایی که بخش secret هم طول کمتری دارن و هم از حروف a تا d یا اصطلاحا همون هگزادسیمال خودمون هستن روی ویندوز قابلیت استفاده رو دارن
1
ظاهرا که نت یه مقدار بهتر شده وضعیتش و وی پی ان های ویندوز هم در حال حاضر در دسترس هستن
1
فعلا Nuget Package Manager با وی پی ان در دسترس هست

یه تست کنید ببینید بدون وی پی ان یا با dns میاد یا نه
1
امروز میخوایم راجع به وراثت یا Inheritance صحبت کنیم

وراثت یا Inheritance در واقع یکی از کاربردهایی که برای ما داره اینه که باعث میشه ما کدهای کمتری بنویسیم و اون برنامه یا وبسایتی که در حال ساختنش هستیم مقیاس پذیر(Scaleablity) باشه ینی بتونیم اون ها رو گسترششون بدیم


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

به همین خاطر ما برای یک موجودیت یکبار یه ساختاری رو در یه کلاس ایجاد میکنیم و به تعداد دفعات زیاد از اون استفاده میکنیم

مثلا اگر در یک وبسایتی بخوایم امکان این رو به کاربران بدیم که عضو بشن اول از همه موجودیت ها رو مشخص میکنیم:

شناسه(UserID)

نام کاربری(UserName)

نام و نام خانوادگی(Full Name)

نقش کاربری(User Role)

شماره تلفن(Phone Number)


تصور کنید توی این وبسایت ما چندین نقش کاربری مثل: عضو عادی،مدیر،نویسنده مقاله، مدیر بخش فروشگاه و... داریم . اگر قرار باشه که ما برای هر کدوم از این نقش ها یک کلاس جداگانه ایجاد کنیم از لحاظ مقیاس پذیری کارمون خیلی سخت میشه به همین خاطر یک ساختار مثل کلاس مشخص میکنیم و یکبار موجودیت ها رو مشخص میکنیم و بعد هر جا که دوست داشتیم ازش استفاده میکنیم

#شی_گرایی
2
public class User
{
public int UserId { get; set; }
public string UserName { get; set; }
public string FullName { get; set; }
public string PhoneNumber { get; set; }
}
2
کانال توسعه دهندگان سی شارپ
public class User { public int UserId { get; set; } public string UserName { get; set; } public string FullName { get; set; } public string PhoneNumber { get; set; } }
اینجا ما اول از همه اومدیم یه ساختار مشخص کردیم و گفتیم که آقا ما یه یوزر داریم که این خصوصیت ها رو داره

بالاخره همه کاربران چه مدیر چه عضو عادی و نقش های دیگه همشون آیدی و شناسه و نام و شماره تماس و اینا دارن دیگه درسته؟ پس منطقی نیست هر بار بیایم اون ها رو توی کلاس های جداگانه و برای هر نقش کاربری تعریفش کنیم

حالا یه کلاس ادمین میسازیم:

public class Admin : User // Admin از User ارث می‌برد
{
public string Department { get; set; }
public bool CanManageUsers { get; set; }
}


برای این که یه کلاس بتونه از کلاس دیگه ارث بری کنه از علامت نقل قول یا ":" استفاده میکنیم

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

توی کلاس ادمین حالا علاوه بر این که هر ادمین یه نام کاربری و نام و نام خانوادگی و شماره تلفن و اینا داره توی خصوصیت(Property) میگیم Department ینی این کاربر مدیر کدوم یک از بخش های سایت هست مثلا مدیر کل یا Administrator یا مدیر بخش مقالات( Blog Manager)

یه مثال کاربردی دوباره میزنم تا بحث دوباره براتون قابل لمس تر بشه
2
   // 1. کلاس پایه (والد) - User
public class User
{
// خصوصیات مشترک همه کاربران
public int UserId { get; set; }
public string UserName { get; set; }
public string FullName { get; set; }
public string PhoneNumber { get; set; }

// متد مشترک
public virtual void DisplayInfo()
{
Console.WriteLine($"👤 User ID: {UserId}");
Console.WriteLine($"📛 Username: {UserName}");
Console.WriteLine($"👨‍💼 Full Name: {FullName}");
Console.WriteLine($"📞 Phone: {PhoneNumber}");
}
}


این کلاس یوزر که شامل چندین تا پراپرتی هست( بعد میگم که اینا چی هستن)

و بعد یک متد ایجاد کردیم که قبلا راجع به متد صحبت کردیم با هشتگ #شی_گرایی میتونید پیداش کنید و گفتیم دیتای کاربر رو در خروجی نشون بده اما بریم ببینیم چجوری میشه پیاده سازیش کرد
3💔1
کانال توسعه دهندگان سی شارپ
// 1. کلاس پایه (والد) - User public class User { // خصوصیات مشترک همه کاربران public int UserId { get; set; } public string UserName { get; set; } public string FullName { get; set; } public string PhoneNumber…
ویدئوها رو به زودی میزارم اینجا تلگرام
فعلا که چند روزیه انقد به سلامتی خودم نرسیدم دارم به فنا میرم
یکم بهتر شم میزارمش
2💔1
به عنوان یک توسعه دهنده خیلی به سلامتی تون اهمیت بدید
شب رو هرگز کار نکنید
تایم بندی داشته باشید
مگر این که نیاز باشه
شب قبل خواب گوشی ممنوع
بعد از هر چند دقیقه آموزش یا پروژه چند دقیقه استراحت کنید

یه مدتی همه اینا سر جای خودشون بودن الان خیلی به هم ریخته شده واسم

با یه دات نت کار که صحبت می‌کردم انقدی توی این شرایط قطعی نت مواظب روان خودش بود میگفت خب وقتی که چیزی نیست چرا الکی منم خودم اذیت کنم درسته نمیتونم داکیومنت بخونم درسته نمیشه کاری کرد اما خب آدم باید حواسش باشه به خودش

خلاصه که خیلی حواستون به روح و روان خودتون باشه
👍2💔1
عمده چالش من شبکه های اجتماعی هست که خیلی چک میکنم و مولتی تسکینگ میکنم😂🤦‍♂
خیلی عادت بدیه مولتی تسکینگ و چند کار همزمان انجام دادن
مغز بدبخت یک ترد بیشتر نمیتونه اجرا کنه من میخوام Hyper Threading کنم😅
اینتل که خودش سازنده این نوع تکنولوژی هست برگاش میریزه
💔1
تفریح رو خیلی بهش اهمیت بدید
گاها گیم میزنم اونم Pes😁
البته نه با تیم های بزرگ تیم های کوچیک از دسته های پایین تر هر کشوری برمیدارم قهرمان میکنم

تفریح غیر از گیم هم داشته باشید حتما بیرون برید
👍2💔1