Learn Python in Arabic #112 - OOP Part 10 - Polymorphism

preview_player
Показать описание
OOP Part 10 - Polymorphism

=============================

Support Me on Patreon to Help me Create More Videos

I will be Very Happy if you Support my Channel.

Join Our Facebook Group:

Follow My Facebook Profile:

Like Facebook Page:

Follow Me On Twitter:
Рекомендации по теме
Комментарии
Автор

ما شاء الله اللهم بارك على هذا الشرح الرائع
وانا جالس اشاهد الفيديو جلست أفكر, لو كنت مكان أسامة أشرح البوليمرفرسيم, ما هي الطريقة الأنسب للشرح؟
لم أجد أفضل من طريقتك بل على العكس, طريقتك بسيطة جدا ورهيبة وتختصر على المتابعين البحث الطويل.
أعطي الخبز لخبازه فعلا
جزاك الله كل الخيرعلى إثراء المحتوى العربي
ارجو الله يرزقك العلم والوقت والمال الوفير وسعادة الدنيا والأخرة.

abdullahalsawalmeh
Автор

مرحبا استاذ أسامة ، اقترح عمل موقع بسيط او تطبيق لدورتك البايثون والدورات المهمة للغات البرمجة الحديثة
يكون مشابه لموقع يودمي أو ندرس كوم أو إدراك التعليمي ، الفيديو يليه اختبار أو عدة اختبارات بالمفاهيم والاكواد ويمكن للمتطوعين مبرمجين متابعة الطلاب وتقديمهم واختباراتهم ،

mohammadhoutary
Автор

الله يعطيك العافية يارب التدرج في طرح الفكرة والامثلة البسيطة وصلت المعلومة من اول مره , , الله يكتب اجرك يا احسن باشمهندس

md-gvch
Автор

الشرح ببساطه

ملحوظه : الخلاصه
اذا اردت ان يرث نفس الخواص استدعي الداله فقط
اذا اردت تغير خواص الداله استخدم / Method Override
اذا اردت اجبار الابن على تغير خواص الداله االلى هايرثها تستخدم Polymorphism


من دماغي هي مثل Method Override : تجاوز الطريقة الفرق
بيشتركوا في ان لو الكلاس الابن حب ياخد اى داله لازم يكتبها عنده وغير الطباعه زى ما هو حابب
الفرق بقى ان هنا في بلويموفزم انك بتجبر الابن يضع الداله عنده برضه ويديه خطا لو لم يفعل ذلك
لانه لو وضع الخطا تحت الداله سوف يرث خواصها هي فقط بدون تغير .يعنى مش هايقدر يغير في طباعتها

moramero
Автор

شرح رائع جدا لمفهوم Polymorphism
بارك الله فيك وكتب اجرك

mousamohammed
Автор

والله احبك واللهم بارك على شرح فعلا شرحك فوق ممتاز والله يوفقك ويكتبلك الخير ويسعدك احبببببك
بس سؤال pass in oop هي توقف الخطا في def __inti():

ComputerCyberkw
Автор

Polymorphism
• What is Polymorphism: The word polymorphism means having many forms. In programming, polymorphism means the same function name (but different signatures) being used for different types.
Example of inbuilt polymorphic functions:
# Example of inbuilt polymorphic functions (+)
n1 = 10
n2 = 20
print(n1 + n2) # + refer to Addition
s1 = "Hello"
s2 = "Python"
print(s1 + " " + s2) # + refer to concatenation
# Example of inbuilt polymorphic functions (len)
print(len([1, 2, 3, 4, 5, 6])) # lengeth for items
print(len("Osama Elzero")) # lengeth for the number of characters
print(len({"Key_One": 1, "Key_Two": 2})) # lengeth for the number of keys

Polymorphism with class methods
There are three ways:
First way: without inheritance
class A:
def greeting(self):
print("Hello from A")
class B:
def greeting(self):
print("Hello from B")
class C:
def greeting(self):
print("Hello from C")

newObjectA = A()
newObjectB = B()
newObjectC = C()

newObjectA.greeting() # Hello from A
newObjectB.greeting() # Hello from B
newObjectC.greeting() # Hello from C
Second way: with multiple-inheritance
class A:
def greeting(self):
print("Hello from A")
class B(A):
def greeting(self):
print("Hello from B")
class C(A):
def greeting(self):
print("Hello from C")

newObjectA = A()
newObjectB = B()
newObjectC = C()

newObjectA.greeting() # Hello from A
newObjectB.greeting() # Hello from B
newObjectC.greeting() # Hello from C
Third way: with multiple-inheritance, and creating a class just to create polymorphism function
class A:
def greeting(self):
print("Hello from A")
raise NotImplementedError("Derived Class Must Implement This Method")
class B(A):
def greeting(self):
print("Hello from B")
class C(A):
def greeting(self):
print("Hello from C")

newObjectA = A()
newObjectB = B()
newObjectC = C()

# newObjectA.greeting() # NotImplementedError("Derived Class Must Implement This Method")
newObjectB.greeting() # Hello from B
newObjectC.greeting() # Hello from C

Python
n1 = 10
n2 = 20
print(n1 + n2)
s1 = "Hello"
s2 = "Python"
print(s1 + " " + s2)

print(len([1, 2, 3, 4, 5, 6]))
print(len("Osama Elzero"))
print(len({"Key_One": 1, "Key_Two": 2}))

class A:
def do_something(self):
print("From Class A")
raise NotImplementedError("Derived Class Must Implement This Method")

class B(A):
def do_something(self):
print("From Class B")

class C(A):
def do_something(self):
print("From Class C")

my_instance = B()
my_instance.do_something()

wdjamilmh
Автор

بارك الله فيك يا بشمهندس
لكن عندى ملحوظة فقط
هنا التطبيق على Polymorphism لم تكن موفق فيه بشكل كامل او بمعنى أصح كان ناقص جزئية اخرى
انك تكون عندك دالة لها بارمتر من الكلاس A
فى الحالة دى هترسل اى اوبجكت من كلاس A, B, C هتشتغل عادى الدالة do_something الخاصة بكل كلاس

Ali-Ali-ahmed
Автор

ال Implement هنا شايفها معناتها بتقول للشخص مينفعش تورثها غير تعمللها Override ولا انا غلطان

MrNeo
Автор

بعد اذنك يهندسة هو احنا ازاي في كلاس A
معرفناش init ???

naoff
Автор

طيب ايه الفايده منها ؟ يعني انا لما اعمل raise ل error جوا ال class الاساسي مهو كمان مش هيقدر يستخدم ال method دي، يبقا ايه الداعى انها تكون موجوده ؟

muhammadabusenna
Автор

يا جماعة لو حدا بيعرف شرح أفضل يحطو، للأسف ما فهمت

raedismail
welcome to shbcf.ru