Menu
CoddyTech

单一职责

Coddy Clean Code:用 Python 写出更好的代码 课程的第 22 课,共 28 课。

“一个类发生变化的原因不应超过一个。”

单一职责原则(SRP)指出,每个类和函数都应该只负责一项工作,或只有一个变化的原因。

目标:

  • 创建内聚性高且健壮的类和函数。
  • 提倡类组合
  • 避免代码重复
challenge icon

挑战

中等

给定一个 Person 类,它有一个 save 方法,用于将这个人保存到数据库。

给定的代码中,这个类有 两个 职责:

  1. 创建并管理 person 对象
  2. 将这个人保存到数据库

你的任务是确保 Person 只有 一个 职责。

  • 创建一个 Database 类,并为它添加 save 方法。
  • 在 Person 和 Database 之间建立连接。

完成这项任务有很多种方法,我们希望你采用其中一种特定的方法,需要时可以使用提示!

请注意,创建单独的 Database 类后,我们就可以在一个地方管理所有“与数据库相关”的内容!

亲手试试

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

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

Clean Code:用 Python 写出更好的代码中的所有课

自己练习: Python 在线编译器