پس کلاس یه طرح کلی یا اصطلاحا blue print به ما میده
ما از کلاس ها استفاده میکنیم در برنامه نویسی که نخوایم برای یه ساختار،چندین بار اون رو در جاهای دیگه تکرار کنیم
مثلا فرض کنیم توی یه کارخونه ماشین سازی، میخوان ماشین بسازن. طرح کلی ماشین ها چیه؟ هر ماشین تعدادی درب داره،چند تا چرخ داره،فرمون داره،دنده داره و چیزای مختلف
فرض کنید کارخونه فیات که از معروف ترین کارخونه های ماشین سازی در دنیا هست یه مدل ماشین در نظر گرفته. این مدل ماشین ها همشون یه ساختار یکسان دارن و میخواد از روی همون 50 تا ماشین تولید کنه
طرح کلی همه این ماشین ها یکی هست و نیازی به این نیست که ما دوباره بخوایم بیایم طراحی اون ماشین رو از اول انجام بدیم
#شی_گرایی
ما از کلاس ها استفاده میکنیم در برنامه نویسی که نخوایم برای یه ساختار،چندین بار اون رو در جاهای دیگه تکرار کنیم
مثلا فرض کنیم توی یه کارخونه ماشین سازی، میخوان ماشین بسازن. طرح کلی ماشین ها چیه؟ هر ماشین تعدادی درب داره،چند تا چرخ داره،فرمون داره،دنده داره و چیزای مختلف
فرض کنید کارخونه فیات که از معروف ترین کارخونه های ماشین سازی در دنیا هست یه مدل ماشین در نظر گرفته. این مدل ماشین ها همشون یه ساختار یکسان دارن و میخواد از روی همون 50 تا ماشین تولید کنه
طرح کلی همه این ماشین ها یکی هست و نیازی به این نیست که ما دوباره بخوایم بیایم طراحی اون ماشین رو از اول انجام بدیم
#شی_گرایی
🔥1
بخوایم مثال عینی تر بزنیم میتونیم بگیم که در یک سایت فروشگاهی بی شک کاربران ثبت نام میکنند در سایت
شما میای یه ساختار تعریف میکنی و میگی که یک کاربر در سایت فروشگاهی این اطلاعات رو داره: نام،نام خانوادگی،شماره موبایل،آدرس که قراره براش اون محصول براش ارسال بشه،رمز عبور،محصولاتی که به قسمت علاقه مندی ها اضافه کرده،تعداد سفارشاتی که داشته، محصولاتی که تا حالا از سایت سفارش داده و...
پس ما یک کلاس میسازیم به اسم User یا UserInfo و بعد داخل اون متغیرها و یا property ها که بعدا باهاش آشنا میشیم،قرار میدیم
و حالا هر جا که نیاز بود به اطلاعات کاربر دسترسی داشته باشیم کافیه از اون کلاس ارث بری کنیم ( این هم بعدا باهاش آشنا میشیم)
#شی_گرایی
شما میای یه ساختار تعریف میکنی و میگی که یک کاربر در سایت فروشگاهی این اطلاعات رو داره: نام،نام خانوادگی،شماره موبایل،آدرس که قراره براش اون محصول براش ارسال بشه،رمز عبور،محصولاتی که به قسمت علاقه مندی ها اضافه کرده،تعداد سفارشاتی که داشته، محصولاتی که تا حالا از سایت سفارش داده و...
پس ما یک کلاس میسازیم به اسم User یا UserInfo و بعد داخل اون متغیرها و یا property ها که بعدا باهاش آشنا میشیم،قرار میدیم
و حالا هر جا که نیاز بود به اطلاعات کاربر دسترسی داشته باشیم کافیه از اون کلاس ارث بری کنیم ( این هم بعدا باهاش آشنا میشیم)
#شی_گرایی
و اما نحوه تعریف کلاس ها چجوری هست؟
شما میتونید در هر کلاسی که باشید بیاید و یک کلاس جدید بسازید که ساختار کلی کلاس ها به این صورت هست:
اونجایی که نوشته acess modifer شما باید سطوح دسترسی به اون کلاس رو مشخص کنید( سطح های دسترسی فقط مخصوص به کلاس نیست و شما میتونید اون رو برای متغیرهای خودتون،property ها ،متدها،اینترفیس ها و... هم استفاده کنید)
کلمه کلیدی class که مشخص میکنه ما داریم یه کلاس ایجاد میکنیم
و به جای myclassهم میتونید اسم دلخواه خودتون رو بزارید
شما در یک برنامه کنسولی ساده میتونید کلاس رو داخل همون کلاس پیشفرضی که وجود داره (Program.cs) ایجاد کنید ولی خب جدا از این که خیلی شلوغ میشه کدتون
به هر حال حرفه ای هم نیست که بخواید یه همچین حرکتی بزنید پس نیاز هست تا بیاید و یه کلاس دیگه ایجاد کنید
پس بهتره چیکار کنیم؟
#شی_گرایی
شما میتونید در هر کلاسی که باشید بیاید و یک کلاس جدید بسازید که ساختار کلی کلاس ها به این صورت هست:
accessmodifer class myclass
اونجایی که نوشته acess modifer شما باید سطوح دسترسی به اون کلاس رو مشخص کنید( سطح های دسترسی فقط مخصوص به کلاس نیست و شما میتونید اون رو برای متغیرهای خودتون،property ها ،متدها،اینترفیس ها و... هم استفاده کنید)
کلمه کلیدی class که مشخص میکنه ما داریم یه کلاس ایجاد میکنیم
و به جای myclassهم میتونید اسم دلخواه خودتون رو بزارید
شما در یک برنامه کنسولی ساده میتونید کلاس رو داخل همون کلاس پیشفرضی که وجود داره (Program.cs) ایجاد کنید ولی خب جدا از این که خیلی شلوغ میشه کدتون
به هر حال حرفه ای هم نیست که بخواید یه همچین حرکتی بزنید پس نیاز هست تا بیاید و یه کلاس دیگه ایجاد کنید
پس بهتره چیکار کنیم؟
#شی_گرایی
بیاید و در قسمت Solution Explorer روی اسم پروژه تون کلیک راست کنید و بعد برید به قسمت Add
گزینه های متعددی بهتون نشون میده که رایج ترین اون ها قرار داده شده که Class هم یکی از اون ها هست
اگر خواستید چیزای دیگه ای اضافه کنید روی New Itemکلیک کنید
روی Class کلیک کنید
یه پنجره براتون باز میشه و باید یه اسم براش انتخاب کنید میتونید هر اسمی دوست دارید بزارید بعدا راجع به اسم گذاری ها هم صحبت خواهم کرد
نکته دیگه این که نیازی نیست که حتما پسوند .cs که بار اول خودش میده رو در انتهای اسم بزارید این دیگه خودش به عنوان کلاس شناسایی میکنه
#شی_گرایی
گزینه های متعددی بهتون نشون میده که رایج ترین اون ها قرار داده شده که Class هم یکی از اون ها هست
اگر خواستید چیزای دیگه ای اضافه کنید روی New Itemکلیک کنید
روی Class کلیک کنید
یه پنجره براتون باز میشه و باید یه اسم براش انتخاب کنید میتونید هر اسمی دوست دارید بزارید بعدا راجع به اسم گذاری ها هم صحبت خواهم کرد
نکته دیگه این که نیازی نیست که حتما پسوند .cs که بار اول خودش میده رو در انتهای اسم بزارید این دیگه خودش به عنوان کلاس شناسایی میکنه
#شی_گرایی
ویندوز ۱۱ مسخره ترین ویندوزی هست که مایکروسافت داده بیرون
بازگشت به سوی وین ۱۰
بازگشت به سوی وین ۱۰
هیچ دردی بدتر از این نیست بیای ابرو رو درست کنی بزنی چشم رو کور کنی😔😂
از من به شما نصیحت دست به پارتیشن بندی هاردتون نزنید😂
از من به شما نصیحت دست به پارتیشن بندی هاردتون نزنید😂
👍1
تا اطلاع ثانوی ادامه بحث شی گرایی کنکله😅
سیستم بیاد ادامش رو احتمالا در قالب ویدئو بگم که بهتر میشه منظور رو رسوند
سیستم بیاد ادامش رو احتمالا در قالب ویدئو بگم که بهتر میشه منظور رو رسوند
امروز چند تا پارامتر میخوام بگم واسه این که بدونیم چه جور دوره های آموزشی اوکی هستن و میتونیم تهیه شون کنیم
موافقید؟
موافقید؟
👍1
هر دوره آموزشی باید چند تا ویژگی داشته باشه:
➖مدرس خود دوره از قبل جایی تجربه کاری داشته باشه.این مورد رو میشه از طریق لینکدین دید که خود مدرس حتماااا تجربه کاری داشته باشه و این نباشه که خودش استاد دانشگاهی چیزی باشه که تنها کارش تدریس در دانشگاه بوده و تجربه کاری یا نداره یا کمه
➖نحوه بیان مدرس خیلی میتونه روی کسایی که دارن ازش یاد میگیرن اثر گذار باشه
صرفا تئوری نباشه و مدرس حتما باید بتونه مثالی رو که میزنه در عمل پیاده کنه
➖مدرس خود دوره از قبل جایی تجربه کاری داشته باشه.این مورد رو میشه از طریق لینکدین دید که خود مدرس حتماااا تجربه کاری داشته باشه و این نباشه که خودش استاد دانشگاهی چیزی باشه که تنها کارش تدریس در دانشگاه بوده و تجربه کاری یا نداره یا کمه
➖نحوه بیان مدرس خیلی میتونه روی کسایی که دارن ازش یاد میگیرن اثر گذار باشه
صرفا تئوری نباشه و مدرس حتما باید بتونه مثالی رو که میزنه در عمل پیاده کنه
➖دوره ۰ تا ۱۰۰ وجود نداره ، دنیای برنامه نویسی یا بهتره بگم مهندسی نرم افزار خیلییییییییی سریع تر از اون چیزی که فکرش رو میکنی پیشرفت میکنه. هر بار ابزارهای جدیدی میان و صرف دوره آموزشی نمیشه پیشرفت
حتی اگه بهترین دوره های آموزشی یودمی رو هم بخری جریان همینه
همین tim corey که من خیلی تعریفشو میکنم همینم توی دوره خودش میگه این مباحث رو میگم و فلان مباحث رو نخواهم گفت
و شاید خیلی وقتا مجبور شید ترکیبی پیش برید ینی هم دوره،هم داکیومنت، هم از چت جی پی تی بپرسید و این چیزیه که ناگزیر هست اصلا هم نباید حس بدی گرفت حرفه ای ای ها هم خیلی چیزا رو هنوز بلد نیستن
حتی اگه بهترین دوره های آموزشی یودمی رو هم بخری جریان همینه
همین tim corey که من خیلی تعریفشو میکنم همینم توی دوره خودش میگه این مباحث رو میگم و فلان مباحث رو نخواهم گفت
و شاید خیلی وقتا مجبور شید ترکیبی پیش برید ینی هم دوره،هم داکیومنت، هم از چت جی پی تی بپرسید و این چیزیه که ناگزیر هست اصلا هم نباید حس بدی گرفت حرفه ای ای ها هم خیلی چیزا رو هنوز بلد نیستن
👏3🔥1
دوستان زیر این پست بگید که کدام مدل لپ تاپ اوکیه واسه اجرای vs و برنامه های سنگین
خودم قصد دارم که ویکتوس بخرم اما نمیدونم اوکیه یا نه
خودم قصد دارم که ویکتوس بخرم اما نمیدونم اوکیه یا نه
سوالی که ممکنه برای هر کدوم از اعضای کانال پیش بیاد یا پیش اومده باشه
حقیقت ماجرا اینه که الان یه مقدار ممکنه بازار کار بعضی زبان های برنامه نویسی افت کرده باشه ولی هرگز به معنای این نیست که دیگه کلا هیچ کاری گیر نمیاد
من صد در صد مخالف این قضیه هستم که یه نفر بخواد توی دل افراد مبتدی رو خالی کنه که نه کار نیست و فلان و بیسار
توی رشته کامپیوتر و بهتره بگیم بحث برنامه نویسی اون کسی بیکار میمونه که نهایت کاری که انجام میده اینه که هنوز پروژه هاش رو با ابزارهای قدیمی میسازه و خودش رو آپدیت نکرده درس های دانشگاهش به خصوص چند تا درس مهم مثل ساختمان داده،مهندسی نرم افزار و آز مهندسی نرم افزار،طراحی الگوریتم رو خوب یاد نگرفته باشه
مهندس نرم افزار بودن این که تلاش کنی سایت یا اپلیکیشنی که میسازی عملکرد بهتری داشته باشه خیلی بهتر از اینه که صرفا یه مشت کد بزنی و نهایتا هم هیچی ازش متوجه نشی
بعدشم کسی که کار بلد باشه و خودشو تا سطح بالایی ارتقا داده باشه از زیر زمین هم که براش باشه کار پیدا میشه حاضرم این قضیه رو هم ثابت کنم
در بدترین حالت ممکن این هست ممکنه توی ایران کاری پیدا نکنی ولی میری تلاش میکنی زبان رو قوی میکنی و با شرکت های خارجی به صورت ریموت یا دورکاری کار میکنی
برنامه نویسی رو خواهشا هیچ وقت با یه اسنپی مقایسه نکنید اونایی که اسنپ کار میکنن هم آدم های شریفی هستن ولی یه رشته مهندسی رو انقد دیگه پایینش نیارید
کسی که نمیخواد سختی بکشه عمرا هم به جایی نمیرسه
آیا برنامه نویسی،رشته کامپیوتر و به خصوص این که این کانال در موضوع سی شارپ فعالیت میکنه درآمد داره یا خیر ؟
حقیقت ماجرا اینه که الان یه مقدار ممکنه بازار کار بعضی زبان های برنامه نویسی افت کرده باشه ولی هرگز به معنای این نیست که دیگه کلا هیچ کاری گیر نمیاد
من صد در صد مخالف این قضیه هستم که یه نفر بخواد توی دل افراد مبتدی رو خالی کنه که نه کار نیست و فلان و بیسار
توی رشته کامپیوتر و بهتره بگیم بحث برنامه نویسی اون کسی بیکار میمونه که نهایت کاری که انجام میده اینه که هنوز پروژه هاش رو با ابزارهای قدیمی میسازه و خودش رو آپدیت نکرده درس های دانشگاهش به خصوص چند تا درس مهم مثل ساختمان داده،مهندسی نرم افزار و آز مهندسی نرم افزار،طراحی الگوریتم رو خوب یاد نگرفته باشه
مهندس نرم افزار بودن این که تلاش کنی سایت یا اپلیکیشنی که میسازی عملکرد بهتری داشته باشه خیلی بهتر از اینه که صرفا یه مشت کد بزنی و نهایتا هم هیچی ازش متوجه نشی
بعدشم کسی که کار بلد باشه و خودشو تا سطح بالایی ارتقا داده باشه از زیر زمین هم که براش باشه کار پیدا میشه حاضرم این قضیه رو هم ثابت کنم
در بدترین حالت ممکن این هست ممکنه توی ایران کاری پیدا نکنی ولی میری تلاش میکنی زبان رو قوی میکنی و با شرکت های خارجی به صورت ریموت یا دورکاری کار میکنی
برنامه نویسی رو خواهشا هیچ وقت با یه اسنپی مقایسه نکنید اونایی که اسنپ کار میکنن هم آدم های شریفی هستن ولی یه رشته مهندسی رو انقد دیگه پایینش نیارید
❤3
خیلی جالبه
امروز رفتم سر کلاس بعد استاد شروع کرد سی شارپ درس دادن
اونم چی؟دات نت فریم ورک قدیمی و شروع از Console.WriteLine و ConsoleColor و این جور چیزا😄
توی دانشگاه فقط یه سری درسا مثل ساختمان داده و طراحی الگوریتم و اینا میتونن کاربردی باشن وگرنه بقیه که هیچ😄
ولی خوشم اومد استاد درس آزمایشگاه پایگاه داده ازمون خواست بریم مقالات خارجی رو ترجمه کنیم و بر اساس اون توی کلاس ارائه بدیم👍
امروز رفتم سر کلاس بعد استاد شروع کرد سی شارپ درس دادن
اونم چی؟دات نت فریم ورک قدیمی و شروع از Console.WriteLine و ConsoleColor و این جور چیزا😄
توی دانشگاه فقط یه سری درسا مثل ساختمان داده و طراحی الگوریتم و اینا میتونن کاربردی باشن وگرنه بقیه که هیچ😄
ولی خوشم اومد استاد درس آزمایشگاه پایگاه داده ازمون خواست بریم مقالات خارجی رو ترجمه کنیم و بر اساس اون توی کلاس ارائه بدیم👍
👍2
احتمالا همه شما با خط ترمینال لینوکس آشنا هستین و از طریق اون میشه برنامه نصب کرد
اما اگر نمیدونید بدونید که ویندوز هم چنین قابلیتی رو مدت ها پیش در ویندوز ۱۰ قرار داد و الان در ویندوز ۱۱ هم وجود داره که میتونید از طریق winget این کار رو انجام بدید
میتونید از طریق این ریپوزیتوری گیت هاب این ابزار رو دانلود و نصب کنید و بعد از طریق Command Prompt یا Windows Powershell برنامه ها رو نصب کنید(آموزشش هم در خودش هست) :
به زودی براش آموزش هم براش میسازم
https://github.com/microsoft/winget-cli
اما اگر نمیدونید بدونید که ویندوز هم چنین قابلیتی رو مدت ها پیش در ویندوز ۱۰ قرار داد و الان در ویندوز ۱۱ هم وجود داره که میتونید از طریق winget این کار رو انجام بدید
میتونید از طریق این ریپوزیتوری گیت هاب این ابزار رو دانلود و نصب کنید و بعد از طریق Command Prompt یا Windows Powershell برنامه ها رو نصب کنید(آموزشش هم در خودش هست) :
به زودی براش آموزش هم براش میسازم
https://github.com/microsoft/winget-cli
GitHub
GitHub - microsoft/winget-cli: WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell…
WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface). - micros...
❤2
یه سری حرکتا میخوام توی رجیستری ویندوز بزنم
انجام دادم باهاتون به اشتراک میذارم 💀😂
انجام دادم باهاتون به اشتراک میذارم 💀😂
👏1
کانال توسعه دهندگان سی شارپ
احتمالا همه شما با خط ترمینال لینوکس آشنا هستین و از طریق اون میشه برنامه نصب کرد اما اگر نمیدونید بدونید که ویندوز هم چنین قابلیتی رو مدت ها پیش در ویندوز ۱۰ قرار داد و الان در ویندوز ۱۱ هم وجود داره که میتونید از طریق winget این کار رو انجام بدید میتونید…
YouTube
آموزش نصب برنامه در ویندوز از طریق WinGet
سلام دوستان امیدواریم حالتون عالییییی باشه😍 توی این ویدیوی آموزشی به نحوه استفاده از ابزار WinGet پرداختیم
اگر از قبل با لینوکس کار کرده باشید میدونید که میتونید از طریق ترمینال برنامه هایی رو که میخواید نصب کنید.چنین امکانی هم در ویندوز از بیلد 1809 ویندوز…
اگر از قبل با لینوکس کار کرده باشید میدونید که میتونید از طریق ترمینال برنامه هایی رو که میخواید نصب کنید.چنین امکانی هم در ویندوز از بیلد 1809 ویندوز…