Menu
Coddy logo textTech

Responsabilità singola

Lezione 22 di 28 del corso Codice pulito - Scrivi codice migliore con Python di Coddy.

"Non dovrebbe mai esserci più di un motivo per cui una classe cambi."

Il principio di responsabilità singola (SRP) afferma che ogni classe e funzione dovrebbe avere un solo compito o un solo motivo per cambiare.

Obiettivi -

  • Creare classi e funzioni altamente coese e robuste.
  • Promuovere la composizione delle classi
  • Evitare la duplicazione del codice
challenge icon

Sfida

Medio

Ti viene data la classe Person, che ha un metodo save per salvare la persona nel database.

Nel codice fornito la classe ha due responsabilità:

  1. Creare e gestire l'oggetto persona
  2. Salvare la persona nel database

Il tuo compito è assicurarti che Person abbia una sola responsabilità.

  • Crea la classe Database con il metodo save.
  • Crea una connessione tra Person e Database

Ci sono molte opzioni per svolgere questo compito; puntiamo a una specifica, quindi usa i suggerimenti quando necessario!

Nota che, quando creiamo una classe separata per Database, possiamo gestire tutto ciò che riguarda il "Database related" in un unico posto!

Provalo tu

class Person:
    def __init__(self, name):
        self.name = name

    def save(self):
        print('Saving person with name "%s"' % self.name)

Tutte le lezioni di Codice pulito - Scrivi codice migliore con Python

Esercitati da solo: Compilatore Python online