مفاهیم شی گرایی در پایتون (Python OOP)

مفاهیم شی گرایی در پایتون (Python OOP)

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

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

مفاهیم اصلی شی گرایی در پایتون:

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

مثال:

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

کلاس:

Python
class Student:
  def __init__(self, name, age, grade):
    self.name = name
    self.age = age
    self.grade = grade

  def print_info(self):
    print(f"نام: {self.name}")
    print(f"سن: {self.age}")
    print(f"معدل: {self.grade}")

شیء:

Python
student1 = Student("علی", 18, 19)
student2 = Student("فاطمه", 17, 18)

ویژگی:

  • name
  • age
  • grade

متد:

  • print_info()

استفاده از اشیاء:

Python
student1.print_info()
student2.print_info()

خروجی:

نام: علی
سن: 18
معدل: 19

نام: فاطمه
سن: 17
معدل: 18

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

  • خوانایی: کد را خواناتر و قابل فهم تر می کند.
  • قابلیت نگهداری: کد را قابل نگهداری و ارتقا پذیرتر می کند.
  • قابلیت استفاده مجدد: کد را قابل استفاده مجدد در برنامه های دیگر می کند.
  • مقیاس پذیری: کد را مقیاس پذیرتر و قابل توسعه تر می کند.

  • کلاس:

    • برای تعریف یک کلاس از کلمه کلیدی class استفاده می‌شود.
    • یک کلاس شامل ویژگی‌ها (متغیرها) و روش‌ها (توابع) است.
    • مثال:
Python
class Person:
  # ویژگی‌ها
  name = ""
  age = 0

  # روش‌ها
  def greet(self):
    print(f"Hello, my name is {self.name}")
  • شیء:

    • برای ایجاد یک شیء از کلمه کلیدی new استفاده می‌شود.
    • یک شیء نمونه‌ای از یک کلاس است.
    • مثال:
Python
person1 = Person()
person1.name = "John Doe"
person1.age = 30

person2 = Person()
person2.name = "Jane Doe"
person2.age = 25

person1.greet()
person2.greet()
  • وراثت:

    • یک کلاس می‌تواند از کلاس دیگر وراثت ببرد.
    • کلاس فرزند ویژگی‌ها و روش‌های کلاس پدر را به ارث می‌برد.
    • مثال:
Python
class Employee(Person):
  # ویژگی‌ها
  salary = 0

  # روش‌ها
  def work(self):
    print(f"{self.name} is working")

employee1 = Employee()
employee1.name = "John Doe"
employee1.age = 30
employee1.salary = 100000

employee1.greet()
employee1.work()
  • چندریختی:

    • توانایی یک شیء برای پاسخگویی به یک پیام به روش‌های مختلف، بسته به نوع آن.
    • مثال:
Python
class Animal:
  def speak(self):
    raise NotImplementedError

class Dog(Animal):
  def speak(self):
    print("Woof!")

class Cat(Animal):
  def speak(self):
    print("Meow!")

dog1 = Dog()
cat1 = Cat()

dog1.speak()
cat1.speak()

5/5 ( 1 امتیاز )
این مطلب در Python ارسال شده و با برچسب , برچسب‌گذاری شده است.

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

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