آموزش برنامه نویسی شی گرا در زبان سی شارپ (C#) – راهنمای ایجاد اولین پروژه سی شارپ در ویژوال استودیو کد (Visual Studio Code) و سیستم عامل ویندوز

سی شارپ عضوی از زبان‌های برنامه نویسی دات نت
سی شارپ عضوی از زبان‌های برنامه نویسی دات نت

شی گرایی یک الگو در برنامه نویسی است که هر برنامه نویسی باید آن را یاد بگیرد، چرا که به هر حال در جایی از زندگی کاری‌اش به شی گرایی نیاز پیدا خواهد کرد.

شی گرایی محبوب‌ترین الگوی برنامه نویسی محسوب شده و به عنوان یک راه استاندارد برنامه نویسی آموزش داده می‌شود. این الگو از مفهومی به نام شی استفاده می‌کند.

در برنامه نویسی شی گرا،‌ برنامه نویس نوع داده (data type) را در یک ساختار داده (data structure) مشخص کرده و همچنین توابعی که قرار است روی آن ساختار داده عملیاتی را انجام دهند، تعیین می کند.

از این ساختار داده با عنوان شی (Object) یاد می‌شود. هر شی شامل داده‌ها و توابع است. برنامه نویس می‌تواند بین اشیا ارتباط برقرار کند، برای مثال یک شی می‌تواند ویژگی‌های خود را از یک شی دیگر به ارث ببرد.

در این برنامه نویسی از مفهومی انتزاعی به نام کلاس (Class) برای ساخت اشیایی که ویژگی‌هایی مشخص و دقیق‌تری داشته باشند استفاده می‌شود.

کلاس‌ها را می‌توان به عنوان یک دسته بندی در نظر گرفت، مثلاً کلاس ماشین یا کلاس سگ. هر کلاس شامل ویژگی‌های مشخصی است. برای مثال می‌توان برای کلاس ماشین، ویژگی‌ رنگ را در نظر گرفت.

ویژگی‌ یا همان attribute تعیین کننده این است که هر شی ایجاد شده از کلاس باید دارای چه مشخصاتی باشد. توجه داشته باشید که مقدار ویژگی در کلاس تعیین نمی‌شود.

در مثال ماشین که پیش‌تر ذکر شد، برای این کلاس یک ویژگی به نام رنگ مشخص کردیم، اما مقدار خاصی به آن اختصاص ندادیم. یعنی مشخص نکردیم که رنگ ماشین زرد است یا قرمز. اما اگر یک نمونه از کلاس ماشین ساخته شود، می‌توان به ویژگی رنگ، مقدار قرمز را اختصاص داد.

در کلاس‌های توابعی نیز وجود دارد که از آن‌ها به نام متود (Method) یاد می‌شود. این متود‌ها را می‌توان در انواع مختلف و برای انجام وظایف مختلف تعریف کرد.

در شکل زیر می‌توانید نمونه‌ای از کلاس، شی، ویژگی‌ها و متود را مشاهده کنید:

مثالی از کلاس، شی و متود
مثالی از کلاس، شی و متود

در برابر برنامه نویسی شی گرا، برنامه نویسی ساخت یافته قرار دارد. در برنامه نویسی ساخت یافته، توابعی تعریف می‌شوند تا

عملیاتی را روی داده‌ها انجام دهند. اما اشیا شامل هم داده و هم توابع هستند.

برنامه نویسی شی گرا مزایای زیادی نسبت به برنامه نویسی ساخت یافته دارد، از جمله:

· اجرای برنامه سریع‌تر و آسان‌تر است

· ساختار کلی برنامه یا نرم افزار واضح‌تر است

· پیاده سازی، ایجاد تغییر و رفع خطا در برنامه نویسی شی گرا آسان‌تر است

· می‌توان اپلیکیشن‌هایی که قابلیت استفاده مجدد دارند را با نوشتن کد کمتر و اختصاص زمان کوتاه‌تری نوشت

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

اگر درمورد شی گرایی اطلاعات کافی ندارید به شما توصیه می‌کنیم مقاله برنامه نویسی شی‌ گرا (OOP) چیست؟ را در مجله فرادرس مطالعه کنید.

مفاهیم پایه‌ای برنامه نویسی شی گرا

در مقدمه، مقداری با برنامه نویسی شی گرا و تفاوت آن با برنامه نویسی ساخت یافته آشنا شدید. برنامه نویسی شی گرا به طور کلی دارای مفاهیمی پایه‌ای است که آن‌ها را بیان خواهیم کرد.

· انتزاع (Abstraction):

فرآیند تعیین ویژگی‌ها و رویه‌ها

· کلاس (Class):

دسته‌ بندی اشیا. کلاس ویژگی‌های مشترک بین تمامی اشیای متعلق به یک دسته را مشخص می‌کند.

· کپسوله سازی (Encapsulation):

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

· مخفی سازی اطلاعات (Information hiding):

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

· ارث بری (Inheritance):

روابط is-a بین کلاس‌ها ایجاد می‌کند. is-a به معنای «هست یک» است. برای مثال فرض کنید یک کلاس شخص و یک کلاس معلم داشته باشیم. شی ساخته شده از کلاس معلم، ویژگی‌های کلاس شخص را نیز دارد و می‌توانیم بگوییم که معلم یکشخص هست.]

رابطه is-a
رابطه is-a


· واسط (Interface):

زبان‌ها و کد‌هایی که اپلیکیشن‌ها برای ارتباط با یکدیگر و نیز ارتباط با سخت افزار استفاده می‌کنند.

· شی (Object):

یک موجودیت خود شمول که شامل هر دوی داده‌ها و توابعی که برای دستکاری این داده‌ها استفاده می‌شوند، است.

· چند ریختی (Polymorphism):

توانایی یک زبان برنامه نویسی برای پردازش متفاوت اشیا بسته به نوع یا کلاس آن‌ها.

· رویه (Procedure):

قسمتی از برنامه که یک وظیفه خاص را انجام می‌دهد.

زبان‌های برنامه نویسی شی گرا

زبان‌های برنامه نویسی شی گرا
زبان‌های برنامه نویسی شی گرا


زبان برنامه نویسی شی گرا، یک زبان برنامه نویسی سطح بالا است که بر اساس یک مدل شی گرا طراحی شده است.

برای نوشتن برنامه نویسی بر پایه مفاهیم شی گرایی، برنامه نویس به یک زبان شی گرا نیاز دارد. بسیاری از زبان‌های برنامه نویسی مدرن از مدل برنامه نویسی شی گرا پشتیبانی می‌کنند. بعضی از زبان‌های قدیمی‌ مانند پاسکال (Pascal) نیز، نسخه‌هایی که از برنامه نویسی شی گرا پشتیبانی کند را ارائه کرده‌اند. مهم‌ترین زبان‌های برنامه نویسی شی گرا عبارت‌اند از:

· جاوا (Java)

· سی پلاس پلاس (C++)

· سی شارپ (C#)

· پایتون (Python)

· پی اچ پی (PHP)

شما می‌توانید با کلیک روی لینک‌های زیر به صفحات آموزش زبان‌های برنامه نویسی شی گرا در فرادرس مراجعه کنید.

شما می‌توانید با کلیک روی لینک‌های زیر به صفحات آموزش زبان‌های برنامه نویسی شی گرا در فرادرس مراجعه کنید.

معرفی زبان برنامه نویسی سی شارپ

زبان برنامه نویسی سی شارپ
زبان برنامه نویسی سی شارپ


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

سی شارپ یک زبان برنامه نویسی مدرن است که ویژگی‌های اصلی خود را از زبان‌های قدیمی‌تری مانند سی (C) و سی پلاس پلاس به ارث برده است.

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

با استفاده از سی شارپ می‌توان اپلیکیشن‌هایی برای پلتفرم‌های لینوکس، ویندوز، اندروید و آی او اس (iOS) طراحی کرد.

سی شارپ توسط مایکروسافت در سال ۲۰۰۰ و به عنوان یک پروژه متن باز تحت نظر بنیاد دات نت (.NET) توسعه داده شد. هدف از طراحی آن، توسعه زبانی بود که بتوان با آن اپلیکیشن‌هایی را طراحی کرد که ساخت آن‌ها با زبان‌های ویژوال بیسیک (Visual Basic) و سی پلاس پلاس مشکل است.

بنیاد دات نت
بنیاد دات نت


سی شارپ بهترین ویژگی‌هایی زبان‌هایی مانند جاوا (Java) و سی پلاس پلاس را در خود جای داده است. بنابراین برنامه نویسانی که به زبان‌های سی، سی پلاس پلاس و جاوا مسلط هستند می‌توانند به راحتی سی شارپ را یاد بگیرند.

آخرین نسخه سی شارپ، نسخه 9.0 است که در سال ۲۰۲۰ به همراه دات نت نسخه ۵ (.Net 5.0) توسط مایکروسافت عرضه شد.

برای تهیه و مشاهده مجموعه آموزش‌های فرادرس در زمینه سی شارپ روی لینک‌های زیر کلیک کنید.

مهم‌ترین کاربردهای سی شارپ عبارت‌اند از:

· توسعه وب اپلیکیشن

· توسعه اپلیکیشن‌های ویندوزی

· توسعه بازی‌ها

مزایای‌ سی شارپ

در میان زبان‌های برنامه نویسی توسعه داده شده توسط مایکروسافت، سی شارپ محبوب‌ترین است.

آمار و ارقام هم از این مسئله پشتیبانی می‌کند. برای مثال طبق نظرسنجی سال ۲۰۱۹ استک اور فلو (Stack Overflow که جامعه‌ای برای برنامه نویسان و حل مشکلات آن‌ها محسوب می‌شود)، ۹/۳۱ درصد توسعه دهندگان حرفه‌ای سی شارپ را بر زبان‌های دیگر ترجیح داده‌اند. طبق همین نظرسنجی، سومین جامعه بزرگ برنامه نویسی مربوط به زبان سی شارپ است.

زبان‌های برنامه نویسی محبوب در میان توسعه دهندگان حرفه‌ای
زبان‌های برنامه نویسی محبوب در میان توسعه دهندگان حرفه‌ای


همچنین تنها در ایالات متحده آمریکا بیش از پنج هزار عنوان شغلی در رابطه با سی شارپ وجود دارد.

مهم‌ترین مزایای سی شارپ عبارت‌اند از:

· زمان توسعه با آن کوتاه‌تر است

· یادگیری آن سریع‌تر انجام می‌شود

· مقیاس‌پذیری آن بسیار بالاست

· جامعه بزرگی از برنامه نویسان آن را پشتیبانی می‌کنند

بهترین راه درک کاربردهای سی شارپ، تهیه و مشاهده آموزش‌های کاربردی و پروژه محور است.

چه پیش‌نیازهایی برای یادگیری سی شارپ وجود دارد؟

از آنجایی که سی شارپ بر پایه زبان‌های سی، سی پلاس پلاس و جاوا ساخته شده است، یادگیری سی شارپ برای برنامه نویسان این سه زبان بسیار لذت بخش و مفرح خواهد بود.

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

ابزار موردنیاز برای برنامه نویسی به زبان سی شارپ

در این قسمت درباره ابزارهای مورد نیاز برنامه نویسی سی شارپ بحث می‌کنیم. پیش‌تر ذکر کردیم که سی شارپ بخشی از چارچوب نرم افزاری دات نت است. بنابراین نصب این چارچوب نرم افزاری برای برنامه نویسی به زبان سی شارپ ضروریست.

از طرفی، برنامه نویسی به زبان سی شارپ باید در یک محیط یکپارچه توسعه (Integrated Development Environment) یا همان IDE صورت بگیرد.

چارچوب نرم افزاری دات نت (.NET Framework)

چارچوب نرم افزاری دات نت
چارچوب نرم افزاری دات نت


دات نت پلتفرمی است که توسط مایکروسافت توسعه داده شده است. این پلتفرم برای طراحی اپلیکیشن‌های زیر به کار می‌رود:

· اپلیکیشن‌های ویندوز

· وب اپلیکیشن‌ها

· وب سرویس‌ها

دات نت از کتابخانه‌های مختلفی تشکیل شده است که زبان‌هایی مانند سی پلاس پلاس و سی شارپ می‌توانند از آن‌ها استفاده کنند.

محبوب‌ترین IDEها برای برنامه نویسی سی شارپ عبارت‌اند از:

· ویژوال استودیو (Visual Studio):

محصولی از شرکت مایکروسافت که بیش از سی زبان برنامه نویسی را پشتبانی کرده و می‌توان به وسیله آن به توسعه اپلیکیشن‌های وب، موبایل و ویندوز پرداخت.

· ویژوال استودیو کد (Visual Studio Code):

ویژوال استودیو کد
ویژوال استودیو کد


یکی از پرکاربردترین IDE‌ها برای برنامه نویسی به زبان سی شارپ که محصول شرکت مایکروسافت است. از مزیت‌های این IDE می‌توان به حجم کم و متن باز بودن آن اشاره کرد.

· Eclipse acute:

IDE معروف اکلیپس یک پلاگین برای برنامه نویسی به زبان سی شارپ عرضه کرده است.

· رایدر (JetBrains Rider):

یک IDE برای توسعه محصولات دات نت که با پتلفرم IntelliJ سازگار است.

نصب پیش‌نیازهای برنامه نویسی به زبان سی شارپ

در این آموزش از IDE قدرتمند مایکروسافت یعنی ویژوال استودیو کد برای برنامه نویسی به زبان سی شارپ استفاده خواهیم کرد.

آموزش را به صورت قدم به قدم با نصب ابزار مناسب و در نهایت نوشتن و اجرای کد دنبال خواهیم کرد.

نصب .NET

برای نصب نسخه حال حاضر دات نت یعنی نسخه پنجم، مراحل زیر را دنبال کنید.

ابتدا به لینک زیر برای دانلود دات نت مراجعه کنید.

باید ورژنی که در تصویر زیر مشخص شده است را انتخاب کنید:

انتخاب نسخه مناسب دات نت
انتخاب نسخه مناسب دات نت


پس از کلیک روی این لینک، به صفحه زیر هدایت خواهید شد که باید در آن نسخه دات نت متناسب با سیستم عامل خود و معماری آن را انتخاب کنید:

انتخاب سیستم عامل
انتخاب سیستم عامل


سپس به صفحه زیر هدایت شده و دانلود شما باید آغاز شده باشد. در غیر این صورت باید رو لینک click here to download manually کلیک کنید تا دانلود شما آغاز شود:

کلیک روی لینک دانلود دات نت
کلیک روی لینک دانلود دات نت


با اجرای فایل نصب دات نت، تنها باید روی دکمه install کلیک کرده و منتظر بمانید تا عملیات نصب به اتمام برسد:

عملیات نصب دات نت
عملیات نصب دات نت


مشاهده پیغام The installation was successful به معنای موفقیت آمیز بودن عملیات نصب است خواهد بود.

نصب ویژوال استودیو کد

برای نصب ویژوال استودیو کد، مراحل زیر را دنبال کنید.

ابتدا روی لینک زیر برای دانلود ویژوال استودیو کد کلیک کنید.

سپس به صفحه زیر هدایت خواهید شد. از آنجایی که آموزش ما برای سیستم عامل ویندوز انجام می‌شود، دانلود ویژوال استودیو کد برای ویندوز را انتخاب کنید:

انتخاب نسخه مناسب برای نصب ویژوال استودیو کد
انتخاب نسخه مناسب برای نصب ویژوال استودیو کد


پس از دانلود، می‌توانید مراحل نصب را به راحتی دنبال کنید. اگر می‌خواهید بیشتر با نحوه نصب و استفاده از ویژوال استودیو کد آشنا شوید، مقاله آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code را در مجله فرادرس مطالعه کنید.

نصب افزونه‌های سی شارپ در ویژوال استودیو کد

حال باید به نصب افزونه سی شارپ در ویژوال استودیو کد بپردازید تا بتوانید به این زبان برنامه بنویسید.

در منوی سمت چپ ویژوال استودیو کد، روی گزینه Extensions کلیک کنید:

نصب افزونه در ویژوال استودیو کد
نصب افزونه در ویژوال استودیو کد

حال باید در قسمت مربوط به جستجو، C# را جستجو کنید تا افزونه‌های مربوط به آن برای شما به نمایش دربیایند. افزونه سی شارپ را انتخاب و روی دکمه Install کلیک کنید:

نصب افزونه سی شارپ در ویژوال استودیو کد
نصب افزونه سی شارپ در ویژوال استودیو کد


برای افزونه C# Extensions نیز همین کار را انجام دهید و آن را نصب کنید. با نصب افزونه C# Extensions می‌توانید به راحتی به گزینه‌هایی نظیر ایجاد کلاس جدید دسترسی داشته باشید.

ایجاد پروژه سی شارپ در ویژوال استودیو کد

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

ویژوال استودیو کد را باز کرده و در منوی سمت چپ روی گزینه Explorer کلیک کنید. سپس روی دکمه Open Folder کلیک کنید:

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


پوشه‌ای که می‌خواهید پروژه شما در آن ایجاد شود را انتخاب کنید. در این آموزش نام پروژه خود را HelloWorld خواهیم گذاشت. پس از انتخاب نام، روی دکمه Select Folder کلیک کنید:

انتخاب نام برای پوشه
انتخاب نام برای پوشه


پروژه شما با موفقیت ایجاد شد و می‌تونید آن را در قسمت Explorer مشاهده کنید. حال در منوی بالایی ویژوال استودیو کد، روی گزینه Terminal کلیک کرده و New Terminal را انتخاب کنید:

ایجاد یک ترمینال جدید در پروژه
ایجاد یک ترمینال جدید در پروژه


در ترمینال، دستور dotnet new console را اجرا کنید. با اجرای این دستور فایل‌ ProjectName.csproj ایجاد خواهد شد که در آن ProjectName همان نام پروژه ما است. همچنین فایل Program.cs و پوشه obj که شامل تمامی وابستگی‌های لازم است ایجاد خواهند شد:

ایجاد یک console جدید برای ساخت فایل‌های لازم
ایجاد یک console جدید برای ساخت فایل‌های لازم


فایل Program.cs شامل کد سی شارپ است:

کد سی شارپ موجود در فایل program.cs
کد سی شارپ موجود در فایل program.cs


این کد قرار است عبارت Hello World! را در خروجی نشان دهد. دستور Console.WriteLine() برای همین منظور استفاده می‌شود.

همچنین تابعی به نام Main در کد مشاهده می‌کنید که در واقع متود اصلی برنامه است و هر وظیفه‌ای که برنامه ما بخواهد انجام دهد، باید در متود Main مشخص شود. کد مربوط به این وظایف را می‌توان در قالب کلاس‌ها و متودهای دیگری نوشت، اما در نهایت باید اشیای ساخته شده از کلاس‌ها در متود Main قرار بگیرند تا بتوان برنامه را اجرا کرد.

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

اولین خط کد نیز عبارت using system را در بر دارد. با استفاده از واژه کلیدی using در ابتدای کدنویسی می‌توان سایر namespaceها را به کد خود اضافه کرد تا از کلاس‌های موجود در آن namespace بتوان بهره‌مند شد.

حال می‌توانیم پروژه را با تایپ دستور dotnet run در ترمینال، اجرا کنیم:

اجرای پروژه در ترمینال
اجرای پروژه در ترمینال


همانطور که در تصویر بالا مشاهده می‌کنید، عبارت Hello World! در خروجی نمایش داده شده است.

استفاده از مفاهیم شی گرایی در سی شارپ

پروژه‌ای به نام oop ایجاد کنید. مراحل ایجاد پروژه را مانند قبل دنبال کنید.

حال به فایل program.cs برای ویرایش کد مراجعه کنید. همانطور که پیش‌تر ذکر کردیم، در یک namespace می‌تواند کلاس‌های مختلفی را تعریف کرد. فایل شما در حال حاضر دارای یک کلاس اصلی به نام Program است. کلاس دیگری به نام Book را مطابق زیر به کد‌های فایل program.cs اضافه کنید:

ایجاد کلاس Book در فایل program.cs
ایجاد کلاس Book در فایل program.cs

همانطور که می‌بینید کلاس Book دارای دو ویژگی‌ به نام‌های author و title است. در واقع کلاسی به نام کتاب ایجاد کرده‌ایم که دارای دو ویژگی نام نویسنده و عنوان کتاب است.

در این کلاس دو متود تعریف شده است. یکی از آن‌ها دقیقاً هم نام با کلاس است و به آن متود سازنده یا constructor می‌گویند.

با تعریف این متود می‌توان هنگام ساخت اشیا، به آن‌ها مقدار دهی نیز کرد.

فرم کلی تعریف متود در سی شارپ به این صورت است که ابتدا سطح دسترسی آن را مشخص می‌کنیم. سطوح دسترسی یا Access Modifierها انواع مختلفی دارند و مشخص کننده سطح دسترسی اعضای سایر کلاس‌ها به متود‌های کلاس فعلی هستند. Modifierها عبارت‌اند از:

public: متود‌ها و اعضای این کلاس توسط اشیای ساخته شده توسط سایر کلاس‌ها قابل دسترسی هستند.

Private: دسترسی به متود‌های یک کلاس تنها برای اعضای همان کلاس فراهم است. یعنی تنها اشیای ساخته شده از روی همان کلاس می‌توانند به متودها دسترسی داشته باشند.

Protected: متودها تنها توسط اعضای همان کلاس و زیرکلاس‌های آن کلاس

پس از مشخص کردن این موضوع، باید این که قرار است تابع چیزی را بازگرداند یا نه را مشخص کنیم.

اگر قرار است تابع چیزی را برگرداند (مثلاً یک رشته) تابع نیز از نوع String تعریف می‌شود. اما اگر قرار باشد تنها یک وظیفه تعیین شده را انجام داده و چیزی را بازنگرداند، تابع را از نوع Void تعریف می‌کنیم.

در نظر داشته باشید که تابع سازنده را همواره باید از نوع public و بدون ذکر یک نوع خاص یا حتی عبارت void پیش از نام آن تعریف کنید. درست مانند چیزی که در مثال ما آمده است:

متود سازنده
متود سازنده

در ادامه نیز نام تابع را تعیین کرده و اگر قرار است تابع دارای ورودی باش، آن‌ها را در بین دو پرانتز تعریف می‌کنیم.

متود printBookDetails() دیگر متود این کلاس است که تنها باید عنوان کتاب و نویسنده آن را چاپ کند و چیزی را باز نمی‌گرداند، بنابراین از نوع Void تعریف شده است:

تعریف یک متود برای چاپ عنوان و نام نویسنده کتاب
تعریف یک متود برای چاپ عنوان و نام نویسنده کتاب

حال باید متود Main را ویرایش کنیم و یک شی از روی کلاس Book در آن بسازیم. همانطور که پیش‌تر ذکر کردیم، ساخت اشیا و فراخوانی توابع مورد نظر باید در متود اصلی یا Main انجام شود تا بتوان برنامه را اجرا کرد. بنابراین کدهای زیر را در تابع Main می‌نویسیم:

ایجاد اشیا و فراخوانی توابع
ایجاد اشیا و فراخوانی توابع

برای تعریف شی، ابتدا نام کلاس را نوشته، سپس نام شی را نوشته و یک مساوی می‌گذاریم. در آن طرف تساوی کلمه کلیدی new را نوشته و به دنبال آن دوباره نام کلاس را به علاوه دو پرانتز باز و بسته اضافه می‌کنیم. ورودی‌های متود را نیز می‌توانیم در همین‌جا مشخص کنیم، چرا که کلاس Book دارای یک متود سازنده است.

سپس متود printBookDetails() را فراخوانی می‌کنیم. برای این کار نام شی را نوشته و یک نقطه می‌گذاریم. به دنبال آن نام متود را ذکر می‌کنیم.

شی دیگری به نام book2 نوشته و همین مراحل را برای این شی نیز دنبال می‌کنیم.

با نوشتن دستور dotnet run در ترمینال برنامه خود را اجرا کرده و نتیجه را در خروجی مشاهده می‌کنیم:

خروجی پروژه
خروجی پروژه

در واقع با نوشتن این کد، دو عضو به نام‌های book1 و book2 به کلاس Book اضافه کردیم.

در مورد شی گرایی و سی شارپ بیشتر یاد بگیرید

در این مطلب مفاهیم پایه‌ای شی گرایی پوشش داده شد و به کمک زبان سی شارپ توانستیم نمونه‌ی از کاربرد شی گرایی را در عمل مشاهده کنیم.

تعریف کلاس‌، شی و متود در سی شارپ نیز در این مطلب آموزش داده شد.

اما اگر می‌خواهید بیشتر درباره سی شارپ و شی گرایی یاد بگیرید، آموزش‌های سایت فرادرس را از دست ندهید.

منابع

https://www.educative.io/blog/object-oriented-programming

https://www.w3schools.com/cpp/cpp_oop.asp

https://www.webopedia.com/definitions/object-oriented-programming-oop/

https://stackify.com/what-is-c-used-for/

https://www.tutorialkart.com/c-sharp-tutorial/create-csharp-project-with-visual-studio-code/

https://www.tutorialkart.com/c-sharp-tutorial/c-sharp-class/