بررسی وراثت و چند شکلی در OOP

معرفی
در پست قبلی به اصول برنامه نویسی شی گرا (OOP) پرداختیم و به انتزاع و کپسوله سازی پرداختیم. حال، بیایید دو مفهوم کلیدی باقی مانده از OOP را بررسی کنیم: وراثت و چندشکلی.
درک وراثت
ارث چیست؟
وراثت به یک کلاس اجازه می دهد تا ویژگی ها و متدها را از کلاس دیگر به ارث ببرد. این امر قابلیت استفاده مجدد کد را ارتقا می دهد و یک سلسله مراتب طبیعی بین کلاس ها ایجاد می کند. کلاسی که به ارث می رسد، زیر کلاس (یا کلاس مشتق شده) نامیده می شود، و کلاسی که از آن به ارث برده می شود، سوپرکلاس (یا کلاس پایه) است.
نحوه استفاده از وراثت
وراثت ایجاد کلاس های جدید بر اساس کلاس های موجود را آسان می کند.
مثال:
class Vehicle:
def __init__(self, make, model):
self.make = make
self.model = model
def start_engine(self):
print("Engine started")
class Car(Vehicle):
def __init__(self, make, model, num_doors):
super().__init__(make, model)
self.num_doors = num_doors
def open_trunk(self):
print("Trunk opened")
Car
ارث می برد از Vehicle
، خواص و روش های خاص خود را اضافه می کند.
مطالعه موردی: ایجاد سلسله مراتب خودرو
تصور کنید در حال طراحی سیستمی برای انواع مختلف وسایل نقلیه هستید. با استفاده از وراثت، شما یک پایه ایجاد می کنید Vehicle
کلاس و آن را به انواع خاصی مانند Car
، Bike
و غیره. این کار افزونگی را کاهش می دهد و کد را مرتب نگه می دارد.
چگونه کمک می کند
این مطالعه موردی نشان میدهد که چگونه وراثت به استفاده مجدد از کد و سازماندهی اجازه میدهد. این کارایی ساخت بر روی سازه های موجود را برای رسیدگی به سناریوهای خاص نشان می دهد.
آشنایی با چند شکلی
پلی مورفیسم چیست؟
چند شکلی اجازه می دهد تا اشیاء از کلاس های مختلف به عنوان اشیاء از یک ابر کلاس مشترک در نظر گرفته شود. این بدان معناست که شما می توانید از یک رابط یکپارچه برای کار با انواع داده های مختلف استفاده کنید. چند شکلی از طریق غلبه بر روش و اضافه بار روش به دست می آید.
نحوه استفاده از پلی مورفیسم
مثال:
class Animal:
def make_sound(self):
pass
class Dog(Animal):
def make_sound(self):
return "Bark"
class Cat(Animal):
def make_sound(self):
return "Meow"
def make_animal_sound(animal):
print(animal.make_sound())
dog = Dog()
cat = Cat()
make_animal_sound(dog) # Outputs: Bark
make_animal_sound(cat) # Outputs: Meow
اینجا، make_animal_sound
می تواند هر کدام را بپذیرد Animal
جسم، چندشکلی را نشان می دهد.
مطالعه موردی: دست زدن به حیوانات مختلف
برنامه ای را در نظر بگیرید که نیاز به کنترل صداهای حیوانات مختلف دارد. با استفاده از پلی مورفیسم می توانید یک روش کلی برای ایجاد صدای حیوانات بدون نگرانی در مورد نوع خاص حیوان ایجاد کنید. این باعث می شود کد انعطاف پذیر و آسان برای گسترش.
چگونه کمک می کند
این مطالعه موردی انعطاف پذیری و قدرت چندشکلی را برجسته می کند. این نشان میدهد که چگونه میتوانید کدهای عمومیتر و سازگارتر بنویسید و تغییرات و اضافات آینده را به راحتی انجام دهید.
نتیجه
برنامه نویسی شی گرا (OOP) یک پارادایم قدرتمند است که توسعه نرم افزار پیچیده را ساده می کند. در این مجموعه دو قسمتی، ما چهار مفهوم کلیدی OOP را بررسی کردیم: Abstraction، Encapsulation، Inheritance و Polymorphism. با درک و به کارگیری این اصول، می توانید کدی ایجاد کنید که سازماندهی شده تر، قابل استفاده مجدد و نگهداری آسان تر باشد.
امیدواریم این مجموعه مقدمه ای واضح و کاربردی برای OOP ارائه کرده باشد. منتظر مقالات عمیق تر در مورد موضوعات پیشرفته در OOP و سایر مفاهیم برنامه نویسی باشید تا مهارت های کدنویسی خود را بیشتر تقویت کنید.
کد نویسی مبارک!