Документування вашого нового класу

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

Mark Pedigo, PhD

Principal Data Scientist

Дорожня карта

Дорожня карта, що показує, які частини проєкту ми завершили і з яких почнемо.

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

Ієрархія ваших класів

  • BasicCalculator
    • Виконує базову арифметику
  • FinancialCalculator
    • Нащадок BasicCalculator
    • Додає фінансові можливості, зокрема відсоткову ставку
  • MortgageCalculator
    • Успадковує FinancialCalculator
    • Поєднує функціональність обох класів
Кейс: створення ПЗ на Python

Docstrings

  • Переваги докрядків
    • Дає чіткі, стислі пояснення коду
  • Як створити докрядок
    • Додайте рядковий літерал першим оператором
    • Опишіть призначення та функціональність
def MortgageClass(FinancialCalculator):
    """
    MortgageClass extends the FinancialCalculator to mortgage specific calculations.
    """
    ...
Кейс: створення ПЗ на Python

Додайте атрибути до класу Mortgage Calculator

    class MortgageCalculator(FinancialCalculator):
    def __init__(self, loan_amount, annual_interest_rate, years):
        super().__init__()
        self.loan_amount = loan_amount
        self.monthly_interest_rate = self.monthly_interest(annual_interest_rate)
    self.months = years * 12
    # Create an attribute to hold the monthly payment amount.
    self.monthly_payment = self.calculate_monthly_payment()
Кейс: створення ПЗ на Python

Відстежуйте функціональність класів

  • Використайте dir(ClassName), щоб отримати список функцій класу
dir(MortgageCalculator)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', 
'__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', 
'__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', 
'__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__',
'__sizeof__', '__str__', '__subclasshook__', '__weakref__', 
'difference', 'monthly_interest', 'months_from_years',
'power', 'product', 'quotient', 'sum']
Кейс: створення ПЗ на Python

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

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

Preparing Video For Download...