پایتون

جلسه ۳۳: مقدمه‌ای بر اشیاء و کلاس‌ها در پایتون

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

یک بررسی کوتاه

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

یک مثالی از کارمندان یک شرکت میزنیم. هر کارمند یکسری مشخصات یا attribute های مخصوص خود را دارد:

  • ID هر کارمند
  • حقوق
  • دپارتمان کاری

عملیات‌ها یا رفتارهای زیر(behavior) میتواند برای هر کارمند اجرا شود:

  • محاسبه مالیات در حقوق
  • محسابه حقوق به ازای هر روز

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

داشتن طرح اولیه یکسان اما خصوصیات متفاوت، اساس کلاس‌ها و اشیا است.

اشیا و کلاس‌ها

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

(ممکن است در جاهای مختلف از attribute ها به عنوان خصوصیات یا اعضا نام برده شود، ما در طول دوره اسم از خصوصیات یا properties استفاده میکنیم)

خصوصیات یا Properties

خصوصیات یکسری متغیر هستند که اطلاعاتی را در مورد یک شی از یک کلاس مشخص ذخیره میکنند. هر شی کلاس employee سه متغیر ID , salary و depatment را به عنوان خصوصیات ذخیره دارد. خصوصیات دیگر هم میتواند به عنوان یک بخش جدید به شی‌های یک کلاس اضافه بشود.

(شما ممکن است ببینید که از رفتار‌ها و عملیات‌ها به عنوان member function یا method یاد میشود. در این آموزش ما از method در سراسر دوره استفاده خواهیم کرد)

متدها

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

هدف کلاس‌ها و شی‌ها

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

به همین دلیل کلاسها و اشیا به عنوان عناصر اصلی سازنده اصول برنامه نویسی شی‌گرا (OOP) هستند.

  • آنها در اینکه کدها، تقسیم بندی مناسب بشوند، نقش زیادی دارند. اجزای مختلف در یک برنامه میتوانند به کلاسهای جدا تبدیل بشوند که طریق رابطه‌هایی با هم تعامل داشته باشند.این اجزای آماده برای استفاده در برنامه‌های بعدی نیز در دسترس خواهد بود و میتوان از آن‌ها استفاده کرد.
  • استفاده از کلاس‌ها حفظ بخشهای مختلف برنامه را برای ما آسان‌تر میکند زیرا ایجاد تغییر در کلاسها ساده‌تر خواهد بود(این موضوع را بعدا بررسی خواهیم کرد)

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

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا