java - 设计模式单一职责原则的理解?
怪我咯
怪我咯 2017-04-18 10:19:44
[Java讨论组]

我们知道单一指责原则的目的是只存在一个原因引起类的变化。
那么是否可以这么理解,就是理想情况下,一个类只能有一个方法,但是这样做在实际开发过程中,会引起很多额外的麻烦,所以很多时候,it's hard to say。

可以这么理解吗?

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
伊谢尔伦

不是吧,目前的时间进行合理的抽象(单一职责=>高内聚),正确的时间进行更加细化的抽象(重构),产品迭代的过程中重构是不可避免的,不可能一步登天。

PHPz

单一职责, 也就是一个类应该只负责一件事。
关键是取决于你认为这件事请的粒度有多大?
字符串小写转大写是一件事(1)。
字符串处理也是一件事(2)。
如果你认为(1)就是一个职责的话, 那么小写转大写就要写一个类, 判断非空要写一个类, 字符统计就要写一个类。
如果你认为(2)就是一个职责的话, 那么所有字符串处理的东西都在一个类似StringUtils类里面。
所以其实这是比较抽象的东西, 并没有绝对的标准,和具体业务有一定的关系。

迷茫

不是说只有一个方法,是只能由一个维度引起的变化,这样的好处就是职责分明,结构简单,耦合性地,这样的组织有利于大型程序的组织,试想一下,像QQ这样复杂的App,假如不执行单一职责原则,谁知道一个程序里面包含多少东西,改变一处会有多大影响。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号