Introducerea provocării

Studiu de caz: Construirea de software în Python

Mark Pedigo, PhD

Principal Data Scientist

Ce este un studiu de caz?

  • Aplicarea competențelor existente la o problemă reală
  • Cursuri prealabile
    • Software Engineering Principles in Python
    • Intermediate Object-Oriented Programming in Python

Două persoane într-o ședință discutând un studiu de caz

Studiu de caz: Construirea de software în Python

Scenariul studiului de caz

Determinarea ipotecii pentru locuințe noi

  • Ofițer de credite la PyBank Financial
  • Construirea unui program pentru
    • Determinarea bugetului pentru locuință
    • Determinarea ratei lunare
  • Declinare de responsabilitate: doar în scop ilustrativ

loan_officer.jpg

Studiu de caz: Construirea de software în Python

Plan de acțiune

  • Software care automatizează calculele
  • Bazat pe principii de inginerie software și clase
  • Etape
    • Calculator de bază
      • +, -, *, /, **
    • Calculator financiar
      • Calculează dobânda, rata dobânzii
    • Calculator ipotecar
      • Calculează suma împrumutului, ratele

Trei calculatoare de dimensiuni crescătoare

Studiu de caz: Construirea de software în Python

Moștenire

Codul este reutilizat între clase

  • Clasa copil (FinancialCalculator) moștenește toată funcționalitatea din clasa părinte (BasicCalculator)
  • Clasa copil poate implementa funcționalități suplimentare
class BasicCalculator:
    def multiply(self, x, y):
        result = x * y
        return result
  ...
# Child of BasicCalculator
class FinancialCalculator(BasicCalculator):
    def months_from_years(self, years):
        # Inherits the .multiply() method
        return self.multiply(years, 12)
    ...
Studiu de caz: Construirea de software în Python

Recapitularea principiilor de inginerie software

  • Cod modular, curat, lizibil, eficient
    • Moștenire, metode
  • Utilizarea bibliotecilor reutilizabile, framework-urilor, soluțiilor existente
    • Modificarea codului preexistent
    • Eficientizarea dezvoltării
  • Documentație clară, comentarii de cod, ghiduri de utilizare
    • Documentație
  • Testare
    • doctest și testare unitară

Imaginea unui calculator înconjurat de pictograme reprezentând ingineria software

Studiu de caz: Construirea de software în Python

Foaie de parcurs

Foaie de parcurs ce prezintă diferitele etape ale proiectului.

Studiu de caz: Construirea de software în Python

Să construim!

Studiu de caz: Construirea de software în Python

Preparing Video For Download...