آموزش شی‌ءگرایی در پایتون

poster
پیش‌نمایش دوره

«برنامه‌نویسی شی‌گرا» (Object Oriented Programming) یک الگوی برنامه‌نویسی است که طراحی نرم‌افزار را حول داده‌ها یا اشیا سازمان‌دهی می‌کند و به جای توابع و منطق بر مفهوم کلاس‌ها و اشیاء تکیه می‌کند. برنامه‌نویسی شی‌گرا قابلیت ... ادامه

برگزارکننده:  مکتب‌خونه  مکتب‌خونه
مدرس دوره:
4.3 (51 رای)
سطح: متوسط
 پلاس
  
زمان مورد نیاز برای گذراندن دوره:  30 ساعت
مجموع محتوای آموزشی:  5 ساعت ویدئو - 25 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  75 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام

آنچه در این دوره می‌آموزیم:

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

 وراثت در برنامه‌نویسی شی‌ءگرا

 پلی‌مورفیسم در شی‌ءگرایی

 کپسوله‌سازی

 انتزاع داده‌ها

پیش‌نیاز‌ها

سرفصل‌های دوره آموزش شی‌ءگرایی در پایتون

فصل اول: مقدمه
  پیشگفتار
مشاهده
"03:35  
  معرفی دوره
"07:50  
فصل دوم: آماده‌سازی
  نصب پایتون و اطمینان از عملکرد صحیح
"09:40  
  نصب محیط توسعه VsCode
"05:39  
فصل سوم: شیءگرایی
  مفاهیم شیءگرایی
"08:54  
  ادامه مفاهیم شیءگرایی (آشنایی کلی با 4 عملکرد اصلی)
"07:17  
  کلاس در پایتون
"12:09  
  کلاس و Object
"17:18  
  کوییز کلاس و Object
 8.3%    
"02:00  
  متدها در کلاس (Methods)
"12:00  
  متدهای جادویی (Magic Methods)
"15:22  
  کوییز متودهای جادویی
 8.3%    
"02:00  
  تمرین فصل سوم (الزامی)
 83.3%    
"180:00  
فصل چهارم: Inheritance
  ارث‌بری در پایتون (Inheritance)
"21:20  
  کوییز ارث‌بری در پایتون
 13%    
"03:00  
  تمرین فصل چهارم (الزامی)
 87%    
"180:00  
فصل پنجم: Encapsulation
  مخفی‌سازی داده (Encapsulation)
"12:56  
  متدهای خصوصی (Private Method)
"07:10  
  کوییز متدهای خصوصی
 100%    
"03:00  
فصل ششم: انواع متدها در کلاس
  دکوراتورها (Decorators)
"14:21  
  Class Method و Static Method
"11:52  
  Property
"07:55  
  کوییز Property
 100%    
"02:00  
فصل هفتم: Abstraction
  آشنایی با Abstraction
"09:58  
  کوییز Abstraction
 9.1%    
"02:00  
  تمرین فصل هفتم (الزامی)
 90.9%    
"180:00  
فصل هشتم: Polymorphism
  آشنایی با Polymorphism
"10:48  
  کوییز آشنایی با Polymorphism
 100%    
"02:00  
فصل نهم: نکات تکمیلی
  آشنایی با Pep8 و CleanCode
"06:59  
  بازی Bingo به صورت تابع‌گرا
"12:08  
  بازی Bingo به صورت شیءگرا و چندنفره
"23:40  
  کوییز بازی Bingo به صورت شیءگرا و چندنفره
 9.1%    
"02:00  
  تمرین فصل نهم (الزامی)
 90.9%    
"360:00  
فصل دهم: پروژه هواشناسی
  گرفتن داده‌های هواشناسی
"27:10  
  پیاده‌سازی بر روی git و ساخت پکیج
"17:40  
  بارگذاری بر روی pypi
"05:56  
  سخن پایانی
"03:20  
  پروژه پایان دوره (الزامی)
 100%    
"600:00  
فصل یازدهم: Solid
  Single Responsibility Principle یا SRP
"01:21  
  Open-Closed Principle
"01:56  
  Liskov Substitution Principle
"00:36  
  Interface Segregation Principle
"01:02  
  Dependency Inversion Principle
"00:51  

ویژگی‌های دوره

گواهی‌نامه مکتب‌خونه
گواهی‌نامه مکتب‌خونه

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

مشاهده نمونه گواهینامه

ویژگی‌های دوره

خدمات منتورینگ
خدمات منتورینگ

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

ویژگی‌های دوره

پروژه محور
پروژه محور

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

ویژگی‌های دوره

تمرین و آزمون
تمرین و آزمون

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

ویژگی‌های دوره

تالار گفتگو
تالار گفتگو

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

ویژگی‌های دوره

تسهیل استخدام
تسهیل استخدام

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

بررسی فرصت‌های شغلی

درباره دوره

«برنامه‌نویسی شی‌گرا» (Object Oriented Programming) یک الگوی برنامه‌نویسی است که طراحی نرم‌افزار را حول داده‌ها یا اشیا سازمان‌دهی می‌کند و به جای توابع و منطق بر مفهوم کلاس‌ها و اشیاء تکیه می‌کند. برنامه‌نویسی شی‌گرا قابلیت استفاده مجدد کد را تضمین می‌کند و از افزونگی جلوگیری می‌کند و از این رو حتی در زمینه‌های خارج از مهندسی نرم‌افزار مانند یادگیری ماشین، هوش مصنوعی، علم‌داده و غیره بسیار محبوب شده است. بسیاری از زبان‌های برنامه نویسی شی‌گرا مانند جاوا، جاوا اسکریپت، پایتون و غیره شی‌ءگرا هستند. دوره آموزش شی‌ءگرایی در پایتون به آموزش این الگو در زبان محبوب پایتون می‌پردازد. قبل از اینکه دوره آموزش شی‌ءگرایی در پایتون معرفی شود. بهتر است که با مفهوم شی‌ءگرایی در پایتون و جنبه‌های مختلف آن آشنا شویم.

دوره آموزش شی‌ءگرایی در پایتون

شی‌ءگرایی در پایتون یا python object oriented programming از اهمیت بسیار بالایی برخوردار است و تقریباً بدون ماهیت شی‌ءگرایی پایتون قدرت چندانی ندارد، از این رو پلتفرم آموزشی مکتب‌خونه در سال 2022 درصدد آن برآمده است که دوره‌ای به نام دوره آموزش شی‌ءگرایی در پایتون ارائه دهد تا با تمام جزئیات و به‌صورت جامع و کاربردی شی‌ءگرایی در پایتون را آموزش دهد. دوره آموزش شی‌ءگرایی در پایتون یکی از پیشرفته‌ترین دوره‌ها برای پایتون به‌حساب می‌آید و دانشجو پس از پایان دوره می‌تواند ماهیت شی‌ءگرایی در پایتون را در پروژه‌های مختلفی به کار ببرد.

هدف از برگزاری دوره آموزش شی‌ءگرایی در پایتون چیست؟

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

دوره آموزش شی‌ءگرایی در پایتون برای چه کسانی مناسب است؟

دوره آموزش شی‌ءگرایی در پایتون برای کسانی مناسب است که تجربه کافی با پایتون در سطح تابع‌گرا دارند و می‌خواهند به سطوح بالاتری از برنامه‌نویسی پایتون برسند، منتهی برای انتخاب فیلد کاری و ماژول‌های مرتبطی که در کار استفاده می‌شوند لازم است که درک درستی از شکل‌گیری آن‌ها داشته باشند که در زمان استفاده حتی بدون رجوع به داکیومنت‌ها هم بتوانند کد رو متوجه شوند. در کل بحث شی‌ءگرایی دانشی نیست که بخواهد انتخابی باشد و باید برنامه‌نویسان پایتون بعد از یک تجربه کاری مفید حتماً به سراغ آن بیایند.

اهمیت دوره شی‌ءگرایی در پایتون

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

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

  • کتاب آموزش شی‌ءگرایی در پایتون
  • فیلم آموزش شی‌ءگرایی در پایتون
  • دوره آموزش رایگان شی‌ءگرایی در پایتون
  • و غیره

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

درباره استاد

maktabkhooneh-teacher علی بیگدلی

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

بیش از 5 سال سابقه برنامه‌نویسی و توانایی وی در حوزه شبکه و ارتباطات روند کار را برایش تسهیل کرد به شکلی که امروز به‌عنوان مدیر بخش تحقیق و توسعه شرکت Mantranic در فنلاند قرار گرفته و در بسیاری از پروژه‌ها نقش کلیدی ایفا می‌کند. زبان‌های پایتون، C++/C و Arduino از تخصص‌های وی در برنامه‌نویسی به شمار می‌آید.

ایشان از سال 96 تیمی با نام ICC-ARIA را بنیان‌گذاری کرد که اهدافشان تدریس تخصص‌های مختلف در حوزه هوش مصنوعی و اینترنت اشیا را شامل می‌شود که در این حوزه طراحی‌های Backend و فریم‌ورکی چون Django نقش بسزایی را ایفا می‌کند. ایده‌پردازی و تبدیل یک ایده به محصول و مهندسی معکوس محصولات از توانایی‌های بالقوه وی به شمار می‌رود.

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.
ابوالفضل جباری 1403-01-28
هم مدرس و هم محتوای دوره به شدت عالی
علیرضا زنگنه 1402-12-26
به صورت کلی دوره عالی هست ولی بعضی از تمرین های داده شده صورت سوال های نامفهومی دارند. مورد بعدی این که در برخی موارد کاربرد مفاهیم تدریس شده بیان نشده یا آنکه مثال های تدریس شده با فضای کاربردی فاصله دارند. اما مفاهیم به خوبی توضیح داده میشود. با تشکر از تیم مکتبخونه و استاد درس
نیکی سادات حسینی نائینی 1402-12-18
بسیار عالی
محمد مهدی نیکنام 1402-12-08
سلام . بسیار دوره ی خوبی بود ممنونم.
پرهام عزیزسونا 1402-12-06
فوق العاده بود! تسلط استاد دوره ، توضیح سلیس و واضح مطالب و تناسب سطح تمارین با محتوای آموزشی
کسری مسکنی 1402-11-19
بسیار دوره خوبی بود و چیز های خوبی میشه باهاش یادگرفت ، اما بعضی موضوع ها بسیار مبهم ارائه شده بودند.
فرحان به منش 1402-11-19
دوره بسیار عالی هست ولی تصحیح پروژه ها چند روز طول میکشه.
علیرضا بختیاری زاده 1402-09-28
دوره ای بسیار کاربردی توسط مدرسی باسواد و با فن بیان بالا. دوستان به درستی به کوتاه بودن دوره و کم بودن مثال ها اشاره کردند که احتمالا به این دلیل است که مدرس محترم قصد تهیه دوره ای جمع و جور و با هزینه ای کمتر رو در ذهن داشته اند تا همه بتوانند از آن استفاده کنند که فکر میکنم تا حدود زیادی به این هدف رسیده باشند. به طور مثال بنده قبلا ویدئوهای طولانی تری رو از ایشون درباره دکوراتور دیده بودم اما در اینجا خلاصه تر اما بسیار روشن تر به این مبحث پرداخته شده بود. برای شخص بنده مبحث پیاده سازی روی pypi و همچنین معرفی کتاب در تصحیح پروژه ها خیلی جذاب بود و از طرفی مفاهیمی مانند staticmethod, property, classmethod, LSP, DIP بسیار مبهم ارائه شده بود. در پایان از مهندس بیگدلی عزیز و همچنین تیم حرفه ای مکتبخونه بابت تهیه این دوره فوق العاده کمال قدردانی و تشکر را دارم و امیدوارم دوره های بیشتری رو از ایشون ببینیم.
عبدالعلی احمدی 1402-09-10
تصحیح ها و جواب دادن به سوالات بیشتر از مثلا دوره پایتون مقدماتی طول میکشه که طبیعیه چون خود استاد درس اینکارو انجام میدن. ولی مطالب دوره و نحوه تدریس مدرس عالی و کاربردی هست و واقعا ارزشش رو داره.
پویان صمیمی 1402-08-15
از طریق مسیر یادگیری پایتون در این دوره شرکت کردم. محتوا بسیار خوب بود، تمرین ها و پروژه ها مناسب بود (هر چند اگر کمی چالش برانگیز تر بودند شاید بهتر هم میشد.) کیفیت ویدئوها خوب بود. (اما مثل بسیاری از دوره های دیگه مکتب خونه Level صدا مدرس پایین بود) در کل این دوره برای من راضی کننده بود و تشکر میکنم از استاد گرامی دوره و مکتب خونه. نکاتی که لزوما منفی نیست و ممکنه سلیقه و نظرشخصی من باشه: - معرفی پکیج ها در انتهای ویدئوها به نظرم چندان کاربردی نبود و میتونست از دوره حذف بشه، یا اینکه حداقل با مطالب دوره متناسب تر بود. -نحوه تدریس کمی متمایل به سمت تدریس آکادمیک و دانشگاهی بود و شاید به عنوان دوره آنلاین، کمی از این حالت خشک خارج میشد بهتر بود.
شهرام ثمر 1402-08-05
عالی هست
توحید سلیمی 1402-08-04
بسیار عالی و کاربردی، نکات ریزی بیان میشه که نشون از تسلط ایشون داره تمرین ها و کوییزها بخوبی طراحی شدن. به شخصه دید خوبی از مسیله شئ گرایی بدست آوردم.
محمد درویشی ایوری 1402-07-16
دوره خوبیه و دید خیلی خوبی از برنامه نویسی شی گرایی میده....
صدرا عباس زاده 1402-07-05
دوره بسیار مفید و عالی بود
احمد اسدی امجد 1402-07-02
دوره ی خیلی خوب و کاربردی. برای شروع مناسب است.
1
2
3

دوره‌های پیشنهادی

سوالات پرتکرار

آیا در صورت خرید دوره، گواهی نامه آن به من تعلق می گیرد؟
خیر؛ شما با خرید دوره می توانید در آن دوره شرکت کنید و به محتوای آن دسترسی خواهید داشت. در صورتی که در زمان تعیین شده دوره را با نمره قبولی بگذرانید، گواهی نامه دوره به نام شما صادر خواهد شد.

سوالات پرتکرار

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

سوالات پرتکرار

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

سوالات پرتکرار

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟
بله؛ پس از سپری شدن مدت زمان دوره شما به محتوای دوره دسترسی خواهید داشت و می توانید از ویدئوها، تمارین، پروژه و دیگر محتوای دوره در صورت وجود استفاده کنید ولی امکان تصحیح تمارین توسط پشتیبان و دریافت گواهی نامه برای شما وجود نخواهد داشت.

برنامه‌نویسی شی‌ءگرا (OOPs)

برنامه‌نویسی شی گرا (OOPs) یک الگوی برنامه‌نویسی است که از اشیاء و کلاس‌ها در برنامه‌نویسی استفاده می‌کند. هدف آن پیاده‌سازی موجودیت‌های دنیای واقعی مانند وراثت، چندشکلی‌ها، کپسوله‌سازی و غیره در برنامه‌نویسی است. مفهوم اصلی OOP- ها این است که داده‌ها و توابعی را که روی آن کار می‌کنند به‌عنوان یک واحد به هم متصل می‌کند تا هیچ بخش دیگری از کد نتواند به این داده‌ها دسترسی داشته باشد.

می‌توان گفت که برنامه نویسی شی‌گرا روشی از برنامه‌نویسی کامپیوتری است که از ایده «اشیاء» برای نمایش داده‌ها و روش‌ها استفاده می‌کند. همچنین روشی است که برای ایجاد کد مرتب و قابل استفاده مجدد به جای یک کد اضافی استفاده می‌شود. این برنامه به اشیاء مستقل یا چند برنامه کوچک تقسیم می‌شود. هر شی واحد نشان دهنده بخش متفاوتی از برنامه است که منطق و داده‌های خاص خود را برای برقراری ارتباط با خود دارد.

مفاهیم اصلی برنامه نویسی پایتون شی گرا (OOPs) شامل موارد زیر است:

  • کلاس (Class)
  • اشیاء
  • پلی‌مورفیسم (چند شکلی)
  • کپسوله‌سازی
  • وراثت
  • انتزاع داده‌ها

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

کلاس در برنامه‌نویسی شی‌ءگرا

«کلاس» (Class) مجموعه‌ای از اشیا است. یک کلاس شامل نمونه اولیه‌ای است که اشیاء از آن ساخته می‌شوند. این یک موجودیت منطقی است که حاوی برخی ویژگی‌ها و روش‌ها است. به زبان ساده می‌توان گفت که کلاس مجموعه‌ای از اشیاء است یا می‌توان گفت طرحی از اشیاء است که ویژگی‌ها و رفتار مشترک را تعریف می‌کند.

کلاس به طور منطقی داده‌ها را به‌گونه‌ای گروه‌بندی می‌کند که قابلیت استفاده مجدد کد آسان می‌شود. برای مثال به دفتری فکر کنید که در آن «کارمند» به‌عنوان یک کلاس و تمام ویژگی‌های مربوط به آن مانند نام، سن، حقوق، شماره کارمندی و غیره به‌عنوان اشیاء شناخته می‌شوند.

چند نکته در رابطه با کلاس پایتون:

  • کلاس‌ها توسط کلاس کلمات کلیدی ایجاد می‌شوند.
  • ویژگی‌ها متغیرهایی هستند که به یک کلاس تعلق دارند.
  • ویژگی‌ها همیشه عمومی هستند و با استفاده از عملگر نقطه (.) قابل‌دسترسی هستند. به‌عنوان مثال: Myclass.Myattribute
  • در دوره آموزش شی‌ءگرایی در پایتون مفاهیم کلاس در قالب مثال‌ها و تمرین‌های عملی به‌خوبی آموزش داده شده است.

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

«اشیا» (Objects) نمونه‌ای از یک کلاس هستند و موجودیتی است که حالت و رفتار دارد. به طور خلاصه، نمونه‌ای از یک کلاس است که می‌تواند به داده‌ها دسترسی داشته باشد. به طور خاص، هر عدد صحیح یا هر رشته منفرد یک شی است. برای مثال عدد 12 یک شی است، رشته "Hello, world" یک شی است یا مثلاً یک لیست یک شی است که می‌تواند اشیاء دیگر را در خود جای دهد و غیره. شما همیشه از اشیاء استفاده کرده‌اید و حتی ممکن است متوجه آن نباشید.

یک شی شامل موارد زیر است:

  • حالت: با ویژگی‌های شی نشان داده می‌شود. همچنین ویژگی‌های شی را منعکس می‌کند.
  • رفتار: با روش‌های شی نشان داده می‌شود. همچنین پاسخ شی به اشیاء دیگر را منعکس می‌کند.
  • شناسه: یک نام منحصر به فرد به یک شی می‌دهد و شی را قادر می‌سازد با اشیاء دیگر تعامل داشته باشد.

برای درک حالت، رفتار و شناسه، اجازه دهید مثال کلاس کارمند دوباره تکرار شود:

  • شناسه یا هویت را می‌توان به‌عنوان نام کارمند در نظر گرفت.
  • حالت یا ویژگی‌ها را می‌توان به‌عنوان سن، حقوق و غیره کارمند در نظر گرفت.
  • رفتار می‌تواند این‌گونه در نظر گرفته شود که آیا کارمند در حال کار کردن یا مرخصی است.
  • در دوره آموزش شی‌ءگرایی در پایتون در محیط برنامه نویسی پایتون همراه با مثال‌های متعدد و عملی شی و نحوه رفتار آن آموزش داده خواهد شد.

وراثت در برنامه‌نویسی شی‌ءگرا

«وراثت» (Polymorphism) توانایی یک کلاس برای استخراج یا به ارث‌بردن خواص از کلاس دیگر است. کلاسی که ویژگی‌ها را مشتق می‌کند، کلاس مشتق شده یا کلاس فرزند و کلاسی که ویژگی‌ها از آن مشتق می‌شوند، کلاس پایه یا کلاس والد نامیده می‌شوند. مزایای ارث عبارت‌اند از:

وراثت در برنامه نویسی قابلیت استفاده مجدد از یک کد را فراهم می‌کند. ما مجبور نیستیم دوباره و دوباره همان کد را بنویسیم. همچنین، این امکان را به ما می‌دهد تا ویژگی‌های بیشتری را به یک کلاس بدون تغییر آن اضافه کنیم. ماهیت ارث‌بری زیر کلاس‌ها را هم شامل می‌شود، به این معنی که اگر کلاس B از کلاس A دیگری ارث می‌برد، آنگاه تمام زیر کلاس‌های B به طور خودکار از کلاس A به ارث می‌برند.

انواع وراثت

انوع وراثت در زبان برنامه نویسی پایتون شی گرا به صورت موارد زیر هستند:

  • وراثت مجرد یا تک سطحی (Single Inheritance): وراثت تک سطحی یک کلاس مشتق شده را قادر می‌سازد تا ویژگی‌های یک کلاس تک والد را به ارث ببرد.
  • وراثت چند سطحی (Multilevel Inheritance): وراثت چند سطحی یک کلاس مشتق شده را قادر می‌سازد تا ویژگی‌های یک کلاس والد فوری را به ارث ببرد که به نوبه خود ویژگی‌ها را از کلاس والد خود به ارث می‌برد.
  • وراثت سلسله مراتبی (Hierarchical Inheritance): وراثت سطح سلسله مراتبی بیش از یک کلاس مشتق شده را قادر می‌سازد تا ویژگی‌های یک کلاس والد را به ارث ببرند.
  • وارثت چندگانه (Multiple Inheritance): وراثت چند سطحی یک کلاس مشتق شده را قادر می‌سازد تا ویژگی‌های بیش از یک کلاس پایه را به ارث ببرد.

پلی مورفیسم در شی‌ءگرایی

«چند شکلی» (Polymorphism | پلی مورفیسم) به زبان ساده به معنای داشتن اشکال متعدد است. پلی مورفیسم در واقع یکی از روش‌های OOP است که در آن یک کار می‌تواند به چندین روش مختلف انجام شود. به بیان ساده، این ویژگی یک شی است که به آن اجازه می‌دهد چندین شکل به خود بگیرد. در دوره آموزش شی‌ءگرایی در پایتون پلی مورفیسم با ارائه مثال‌های عملی آموزش داده شده است.

کپسوله سازی

«کپسوله سازی» (Encapsulation) یکی از مفاهیم اساسی در برنامه نویسی شی‌ءگرا (OOP) است. کپسوله سازی در واقع ایده بسته‌بندی یا کپسوله سازی داده‌ها و روش‌هایی که روی داده‌ها در یک واحد کار می‌کنند را توصیف می‌کند. کپسوله سازی محدودیت‌هایی را برای دسترسی مستقیم به متغیرها و روش‌ها ایجاد می‌کند و می‌تواند از تغییر تصادفی داده‌ها جلوگیری کند. برای جلوگیری از تغییر تصادفی، متغیر یک شی فقط با روش یک شی قابل تغییر است. این نوع متغیرها به‌عنوان متغیرهای خصوصی شناخته می‌شوند. یک کلاس نمونه‌ای از کپسوله سازی است زیرا تمام داده‌هایی که توابع عضو، متغیرها و غیره هستند را کپسوله می‌کند.

انتزاع داده‌ها

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

poster
پیش‌نمایش دوره
  
برگزار کننده:  مکتب‌خونه
  
زمان مورد نیاز برای گذراندن دوره:  30 ساعت
مجموع محتوای آموزشی:  5 ساعت ویدئو - 25 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  75 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام