WEBVTT

00:00.460 --> 00:01.540
خوش آمدید دوباره.

00:01.540 --> 00:06.820
در این فصل قرار است برنامه‌نویسی شی‌ءگرا در سی‌شارپ را پوشش بدهیم.

00:06.820 --> 00:09.730
تا اینجا ما فقط در یک کلاس کار کرده‌ایم.

00:09.730 --> 00:12.700
بود.main و آن همان کلاس اصلی ما با متد  

00:12.700 --> 00:17.230
و در واقع هیچ برنامه‌نویسی شی‌ءگرای واقعی در آن انجام ندادیم.

00:17.230 --> 00:23.470
و در این ویدیو می‌خواهم کمی نگاهی اجمالی به چیزی که در فصل بعدی اتفاق می‌افتد به شما نشان بدهم.

00:23.470 --> 00:27.040
پس بیایید جلو برویم و ببینیم کلاس چیست.

00:27.040 --> 00:31.060
به طور کلی، کلاس یک نقشه یا الگو برای یک شی‌ء است.

00:31.060 --> 00:34.150
و این همان جایی است که برنامه‌نویسی شی‌ءگرا از آن می‌آید.

00:34.150 --> 00:39.970
به این ترتیب شما می‌توانید چندین شی‌ء از یک کلاس خاص بسازید که خودتان ایجاد کرده‌اید.

00:39.970 --> 00:45.010
ما حتی از کلاس‌ها استفاده کرده‌ایم، همانطور که می‌دانید، مثلاً کلاس Console یا کلاس String

00:45.010 --> 00:46.840
و غیره.

00:46.870 --> 00:54.940
سپس یک کلاس قابلیت‌ها یا اعمالی دارد که به آن‌ها توابع عضو یا متد گفته می‌شود.

00:54.940 --> 00:59.830
ما قبلاً متدها را از همان کلاس‌هایی که دیده‌ایم استفاده کرده‌ایم.

00:59.830 --> 01:08.620
مثلاً در Console، متدهایی مثل Read یا ReadLine و WriteLine را استفاده کرده‌ایم،

01:08.620 --> 01:09.130
چنین چیزهایی.

01:09.130 --> 01:13.870
پس این‌ها متدها یا همان توابع عضو آن کلاس بودند.

01:14.140 --> 01:20.350
سپس کلاس ویژگی‌هایی دارد که به آن‌ها متغیرهای عضو گفته می‌شود، مثل Length.

01:20.350 --> 01:23.980
ما ویژگی Length را در یک کلاس دیده‌ایم.

01:23.980 --> 01:28.690
و آن کلاس String ما بود که بررسی کردیم طول رشته چقدر است.

01:28.690 --> 01:32.200
و آن یک ویژگی از آن کلاس بود.

01:32.200 --> 01:36.550
بنابراین شما می‌توانید ویژگی‌های مختلفی بسازید و بعداً آن‌ها را فراخوانی کنید.

01:37.240 --> 01:40.870
سپس ارث‌بری در کلاس‌ها امکان‌پذیر است.

01:40.870 --> 01:47.980
و ما در یک فصل جداگانه به ارث‌بری نگاه خواهیم کرد و آن را با جزئیات بیشتری بررسی خواهیم کرد.

01:47.980 --> 01:48.730
اما فعلاً فقط برای اطلاع شما، امکان ارث‌بری کلاس‌ها وجود دارد و می‌توان از آن‌ها مثل یک نوع داده استفاده کرد.

01:56.110 --> 02:02.260
برای مثال، String یک کلاس است و ما از رشته‌ها به عنوان نوع داده استفاده کرده‌ایم.

02:02.260 --> 02:02.770
خیلی خب.

02:02.770 --> 02:05.230
مورد بعدی یک شی‌ء است.

02:05.230 --> 02:06.370
شی‌ء چیست؟

02:06.370 --> 02:09.220
خب شما می‌توانید از یک کلاس شی‌ء بسازید.

02:09.220 --> 02:12.940
پس همانطور که گفتم کلاس یک الگو برای شی‌ء است.

02:12.940 --> 02:17.140
حالا اینجا یک شی‌ء داریم که یک ماشین است و آن یک آئودی است.

02:17.140 --> 02:25.270
ویژگی‌های آن ماشین می‌تواند شامل اسب‌بخار، تعداد چرخ‌ها، روشنایی چراغ جلو،

02:25.270 --> 02:29.260
تعداد درها و بسیاری ویژگی‌های دیگر باشد.

02:29.260 --> 02:36.730
سپس قابلیت‌های آن می‌تواند رانندگی، ترمز گرفتن، باز کردن پنجره، روشن کردن چراغ و غیره باشد، تعداد زیادی قابلیت.

02:37.600 --> 02:40.210
و در نهایت ارث‌بری به این شکل عمل می‌کند.

02:40.210 --> 02:43.570
شما یک ماشین دارید که به آئودی ارث می‌دهد.

02:43.570 --> 02:46.840
پس یک آئودی یک ماشین است اما ویژگی‌های خاص خود را دارد.

02:46.840 --> 02:52.030
سپس یک A5 یک آئودی است، اما ویژگی‌های مخصوص به خود را دارد و همینطور ادامه دارد.

02:52.030 --> 02:57.940
پس این فقط یک معرفی خیلی کوتاه به برنامه‌نویسی شی‌ءگرا و کلاس‌ها بود.

02:57.940 --> 03:05.470
و ما به سراغ دموی عملی خواهیم رفت که در آن همه این موارد را در عمل خواهید دید و درک بهتری

03:05.470 --> 03:09.820
از کارکردشان، هدفشان و اینکه چطور می‌توانیم از آن‌ها استفاده کنیم پیدا خواهید کرد.

03:09.820 --> 03:10.540
خیلی خب.

03:10.540 --> 03:14.800
پس شما را در ویدیوی بعدی می‌بینم که کلاس خودمان را خواهیم ساخت.
