微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

oop – 单一责任原则的例子是什么?

有人能给我一个单一责任原则的例子吗?我试图理解,在实践中,一个班级有一个单一的责任,因为我担心我可能每天都违反这条规则.

解决方法

查看 Solid description.

除非你要求更具体的东西,否则很难提供更多帮助.

单一责任是一个阶级做一个特定事物(责任)而不是试图做更多事情的概念,这也被称为高凝聚力.

类通常不会以低内聚开始,但通常在几个版本和不同的开发人员加入它们之后,突然你会注意到它变成了一个怪物或神级,就像有些人所说的那样.所以课程应该重构.

很难想到一个很好的例子,但我最近能想到的是一个管理不同数据包处理阶段的类,一种责任链.这个类的初衷是维护一个阶段列表并协调调用它们的packetProcess().好吧,它最终表明每个人都在处理阶段(因为经理类是访问阶段的一个容易的地方)添加了与此经理类相关的任何内容,尤其是阶段配置.经理类不再具有单一责任,而是负责调用阶段以进行配置更改:因此Cohesion已经减少.

我们最终不得不重构经理类,删除所有阶段配置并将其放入工厂,从而让经理去做它想要做的事情.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐