Наслідування дає повторне використання коду

Кейс: створення ПЗ на 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

Наслідування дає повторне використання коду

  • Наслідування для повторного використання коду
    • Використовуйте код з батьківського класу
  • Ієрархія класів
    • Наслідування від «дитини» до «онука»
  • Гнучка структура
    • Будуйте гнучку, впорядковану ієрархію класів
Кейс: створення ПЗ на Python

Інші типи наслідування

  • Багаторівневе наслідування
    • Клас наслідує підклас іншого класу
    • Використано в кейсі: від BasicCalculator до FinancialCalculator до MortgageCalculator
  • Ієрархічне наслідування
    • Кілька класів наслідують одного батьківського
  • Множинне наслідування
    • Клас наслідує від двох і більше неповʼязаних класів
Кейс: створення ПЗ на Python

Використання super()

  • Доступ до методів і властивостей батька
    • Використовуйте super() без прямої назви батьківського класу
  • Працює з складними ієрархіями
    • Запобігає дублюванню коду та помилкам в ієрархіях класів
class Animal:
    def __init__(self, name):
        self.name = name
class Dog(Animal):
    def __init__(self, name):
          # super викликає метод __init__ 
          # з батьківського класу
          super().__init__(name)
Кейс: створення ПЗ на Python

Давайте потренуємось!

Кейс: створення ПЗ на Python

Preparing Video For Download...