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