SRP:单一责任原则

单一责任原则(SRP)规定,每个软件模块或类都应该有一个且只有一个更改理由。

除佛陀本人外,任何人都不承担透露神秘秘密的责任。

将因相同原因而发生变化的事物聚集在一起。 分开那些由于不同原因而改变的事物。

鲍勃·马丁

  • 难以理解,因此难以维护。
  • 重用困难。 由于职责在同一个类别中紧密联系在一起,因此很难在不损害其他职责的情况下更改其中一项职责(刚性),并且最终可能破坏软件的其他部分(脆弱性)。
  • 高耦合,即该类具有过多的依赖性,因此,由于其他类的更改(同样是脆弱性),因此更容易发生更改。

让我们考虑一些可能需要分开的职责:

  • HTTP API调用 -如果需要修改标头或基本URL,则只能将其修改为HTTPClient 。 无需为此其他文件做任何更改。
  • 创建视图状态-创建视图状态应该由工厂或转换器负责。
  • 验证 所有验证逻辑都应封装到单独的Validation类中,以便将来只有一个人负责修改验证逻辑或添加新行为。
  • 坚持不懈
  • 通知
  • 错误处理
  • 记录中
  • 格式化
  • 解析中
  • 制图
  • 导航
  • 商业逻辑
  • 创建视图

https://blog.cleancoder.com/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html

https://www.scaledrone.com/blog/solid-principles-for-becoming-a-better-ios-swift-developer/

单一责任原则@清洁代码联盟聚会,来自Eyal Golan


感谢您阅读文章。

您可以在以下位置找到我:

Linkedin: Aaina Jain

推特: __aainajain