Inheritance ช่วยนำโค้ดกลับมาใช้ใหม่

กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

Mark Pedigo

Principal Data Scientist

แผนที่เส้นทาง

แผนที่แสดงส่วนที่สร้างเสร็จแล้วและส่วนที่กำลังจะเริ่มในโปรเจกต์นี้

กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

ทบทวนสิ่งที่สร้างไปแล้ว

  • BasicCalculator()
    • การดำเนินการทางคณิตศาสตร์พื้นฐาน
  • FinancialCalculator
    • สืบทอดจาก BasicCalculator
    • เมธอดสำหรับการคำนวณทางการเงิน
class BasicCalculator:
  def multiply(self, x, y):
      result = x * y
      return result
  ...
# Child of BasicCalculator
class FinancialCalculator(BasicCalculator):
    def monthly_interest(self, annual_interest_rate):
        return self.divide(annual_interest_rate, 12)
    ...
กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

Inheritance ช่วยนำโค้ดกลับมาใช้ใหม่

  • Inheritance เพื่อนำโค้ดกลับมาใช้ใหม่
    • นำโค้ดจาก parent class มาใช้ซ้ำ
  • ลำดับชั้นของคลาส
    • สืบทอดจาก child ไปยัง "grandchild" class
  • โครงสร้างที่ยืดหยุ่น
    • พัฒนาลำดับชั้นของคลาสที่ยืดหยุ่นและเป็นระเบียบ
กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

รูปแบบอื่นของ Inheritance

  • Multilevel inheritance
    • คลาสสืบทอดจาก subclass ของอีกคลาสหนึ่ง
    • ใช้ในกรณีศึกษา — BasicCalculatorFinancialCalculatorMortgageCalculator
  • Hierarchical inheritance
    • หลายคลาสสืบทอดจาก parent class เดียวกัน
  • Multiple inheritance
    • คลาสสืบทอดจากสองคลาสขึ้นไปที่ไม่เกี่ยวข้องกัน
กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

การใช้ super()

  • เข้าถึงเมธอดและคุณสมบัติของ parent
    • ใช้ super() โดยไม่ต้องระบุชื่อ parent class โดยตรง
  • จัดการ inheritance ที่ซับซ้อน
    • ป้องกันโค้ดซ้ำซ้อนและข้อผิดพลาดในลำดับชั้นของคลาส
class Animal:
    def __init__(self, name):
        self.name = name
class Dog(Animal):
    def __init__(self, name):
          # super calls __init__ 
          # method from parent class
          super().__init__(name)
กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

มาฝึกกันเถอะ!

กรณีศึกษา: การสร้างซอฟต์แวร์ด้วย Python

Preparing Video For Download...