oop – 单一责任原则的例子

有人可以给我一个单一责任原则的例子吗?我正在努力理解这一点,实际上,一个课堂有一个责任,因为我恐怕我可能每天都违反这个规则.
查看 Solid description.

除非你要求更具体的内容,否则很难帮助更多.

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

课堂通常不会以低凝聚力开始,但通常在几个版本和不同的开发人员添加到他们之后,突然间你会注意到它成为一个怪物或者上帝的类,有些人称之为它.所以课程应该重构.

它很难想到一个很好的例子,但我最近可以想到的一个类是我们管理的不同的数据包处理阶段,一种责任链.这个类的初始意图是维护一个阶段列表,并编排调用packetProcess().那么最终,最终,每个人​​都加入了处理阶段(因为经理类是一个容易的访问阶段的地方)到这个经理类,特别是阶段配置.经理类不再有单一责任,而是负责调用配置更改的阶段:因此,凝聚力已经减少.

我们最终不得不重新组织经理班,把所有的舞台配置,把它放在一个工厂里,让经理去做它想做的事情.

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...