در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش پایتون (Python) به زبان خیلی ساده قسمت 22 : شی گرایی

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

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

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


  1. کلاس: زمانی که قصد استفاده از یک موجودیت را داریم، ابتدا باید یک مدل اولیه از آن تعریف کنیم که در زبان پایتون این کار بوسیله کلاس انجام می شود. اینطور می توان گفت که کلاس نمونه اولیه غیر قابل استفاده از یک موجودیت است، مانند نقشه خانه ای که بر روی کاغذ کشیده شده و قابل سکونت نیست، اما می توان از روی آن خانه مورد نظر را ساخت.
  2. شئ: شئ یک نمونه یا Instance از یک کلاس است که قابل استفاده می باشد. رابطه بین کلاس و شئ، مانند رابطه بین نقشه و خانه ساخته شده می باشد. شما از روی نقشه ای که کشیده شده، خانه را می سازید و در آن می توانید زندگی کنید.


تعریف کلاس در پایتون



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

class Person:
    class body

همانطور که مشاهده می کنید برای تعریف کلاس از کلمه کلیدی class استفاده می کنیم و در مقابل آن نام کلاس که در مثال بالا Person است را می نویسیم. بخش class definition هم تعریفات کلاس را که شامل خصوصیت ها و رفتارها می باشد را می نویسیم. به عنوان مثال، برای کلاس Person خصوصیت های نام، نام خانوادگی و سن را اضافه کنیم. برای اینکار کد بالا را به صورت زیر تغییر می دهیم:

class Person:
    def __init__(self, firstname, lastname, age):
        self.firstname = firstname
        self.lastname = lastname
        self.age = age

در کد بالا همانطور که مشاهده می کنید برای کلاس Person یک تابع با نام init تعریف کردیم. در حقیقت تابع init تابعی است که در زمان ایجاد شئ به صورت خودکار فراخوانی می شود و بر اساس پارامتر هایی که برای آن مشخص شده شئ ایجاد شده مقدار دهی می شود. اولین پارامتر این تابع self است که اشاره دارد به شئ ای که از روی Person در حال ایجاد است و خصوصیت ها به پارامتر self مقدار دهی می شوند. در قدم بعدی باید یک شئ از روی کلاس Person ایجاد کنیم. برای اینکار دستور زیر را استفاده می کنیم:

>>> person = Person("Hossein","Ahmadi",30)

کد بالا یک شئ از نوع Person ایجاد کرده و خصوصیت های مورد نظر ما را مقدار دهی می کند. دقت کنید که به عنوان پارامتر ورودی مقداری برای self مشخص نشده، در حقیقت شما زمان ایجاد شئ تنها می بایست برای پارامتر های بعد از self مقدار مشخص کنید که در نمونه کد بالا مشخص است. مقدار self به صورت خودکار توسط مفسر پایتون مشخص می شود که شامل شئ ایجاد شده است. در قدم بعدی بعد از ایجاد شئ می توانیم به راحتی از شئ ایجاد شده استفاده کنیم:

>>> print(person.firstname)
Hossein

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


تعریف رفتار برای کلاس


برای تعریف یک رفتار داخل یک کلاس تنها کاری که باید انجام دهیم این است که داخل آن یک تابع تعریف کنیم، ولی با نامی غیر از init، برای مثال، تابعی با نام fullname تعریف می کنیم که مقدار firstname و lastname را یکجا نمایش دهد:

class Person:
    def __init__(self, firstname, lastname, age):
        self.firstname = firstname
        self.lastname = lastname
        self.age = age

    def fullname(self):
        return self.firstname + " " + self.lastname

در مثال بالا تابعی با نام fullname تعریف کردیم، این تابع پارامتر ورودی ندارد (پارامتر self مانند تابع init توسط خود مفسر مقدار می شود و شامل شئ ایست که تابع بر روی آن فراخوانی می شود). در مثال زیر از تابع fullname استفاده می کنیم:

>>> person = Person("Hossein","Ahmadi",30)
>>> print(person.fullname())
Hossein Ahmadi

همانطور که مشاهده می کنید با اجرای کد بالا، عبارت Hossein Ahmadi که شامل نام و نام خانوادگی می باشد در خروجی نمایش داده می شود.

نویسنده: حسین احمدی
منبع: جزیره برنامه نویسی وب سایت توسینسو
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی است
#فیلم_آموزشی_پایتون #برنامه_نویسی_شئ_گرا_چیست #آموزش_برنامه_نویسی_شئ_گرا #برنامه_نویسی_شئ_گرا_در_پایتون #آموزش_پایتون #آموزش_برنامه_نویسی #شروع_برنامه_نویسی_با_پایتون #کلاس_ها_در_پایتون
عنوان
1 آموزش پایتون (Python) به زبان خیلی ساده قسمت 1 : آشنایی با پایتون رایگان
2 آموزش پایتون (Python) به زبان خیلی ساده قسمت 2: نوشتن برنامه اول رایگان
3 آموزش پایتون (Python) به زبان خیلی ساده قسمت 3 : ساختار اسکریپت رایگان
4 آموزش پایتون (Python) به زبان خیلی ساده قسمت 4 : نوع داده ها رایگان
5 آموزش پایتون (Python) به زبان خیلی ساده قسمت 5 : تبدیل نوع داده رایگان
6 آموزش پایتون (Python) به زبان خیلی ساده قسمت 6 : عملگرها رایگان
7 آموزش پایتون (Python) به زبان خیلی ساده قسمت 7 : دستور شرطی IF رایگان
8 آموزش پایتون (Python) به زبان خیلی ساده قسمت 8 : حلقه ها رایگان
9 آموزش پایتون (Python) به زبان خیلی ساده قسمت 9 : توابع عددی و عدد رایگان
10 آموزش پایتون (Python) به زبان خیلی ساده قسمت 10 : رشته و توابع آن رایگان
11 آموزش پایتون (Python) به زبان خیلی ساده قسمت 11 : لیست ها رایگان
12 آموزش پایتون (Python) به زبان خیلی ساده قسمت 12 : Tuple ها رایگان
13 آموزش پایتون (Python) به زبان خیلی ساده قسمت 13 : دیکشنری ها رایگان
14 آموزش پایتون (Python) به زبان خیلی ساده قسمت 14 : مجموعه ها Sets رایگان
15 آموزش پایتون (Python) به زبان خیلی ساده قسمت 15 : Zip و پیمایش رایگان
16 آموزش پایتون (Python) به زبان خیلی ساده قسمت 16 : Comprehension رایگان
17 آموزش پایتون (Python) به زبان خیلی ساده قسمت 17 : توابع (Function رایگان
18 آموزش پایتون (Python) به زبان خیلی ساده قسمت 18 : Closure ها رایگان
19 آموزش پایتون (Python) به زبان خیلی ساده قسمت 19 : توابع بازگشتی رایگان
20 آموزش پایتون (Python) به زبان خیلی ساده قسمت 20 : ماژول ها رایگان
21 آموزش پایتون (Python) به زبان خیلی ساده قسمت 21 : پکیج ها رایگان
22 آموزش پایتون (Python) به زبان خیلی ساده قسمت 22 : شی گرایی رایگان
زمان و قیمت کل 0″ 0
1 نظر
77alireza1377

واقعا عالی بود...

ممنونم

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....