Single Responsibility
Lektion 22 von 28 im Kurs Clean Code - Schreibe besseren Code mit Python von Coddy.
„Es sollte niemals mehr als einen Grund geben, eine class zu ändern.“
Das Prinzip der Einzelverantwortung (SRP) besagt, dass jede class und jede Funktion nur eine Aufgabe oder einen Grund zur Änderung haben sollte.
Ziele –
- Stark kohäsive und robuste class und Funktionen erstellen.
- Die Komposition von class fördern
- Code-Duplikation vermeiden
Aufgabe
MittelDir ist die class Person gegeben, die über eine Methode save verfügt, um die Person in der Datenbank zu speichern.
Im gegebenen Code hat die class zwei Verantwortlichkeiten:
- Ein person-Objekt erstellen und verwalten
- Die Person in der Datenbank speichern
Deine Aufgabe besteht darin sicherzustellen, dass Person nur eine Verantwortung hat.
- Erstelle die class
Databasemit der Methodesave. - Stelle eine Verbindung zwischen
PersonundDatabaseher.
Es gibt viele Möglichkeiten, diese Aufgabe zu lösen. Wir zielen auf eine bestimmte Lösung ab. Verwende bei Bedarf die Hinweise!
Beachte, dass wir, wenn wir eine separate class für Database erstellen, alle "Database related"-Dinge an einer Stelle verwalten können!
Probier es selbst
class Person:
def __init__(self, name):
self.name = name
def save(self):
print('Saving person with name "%s"' % self.name)Alle Lektionen in Clean Code - Schreibe besseren Code mit Python
Übe selbstständig: Online-Python-Compiler