加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

设计模式-单一职责原则

发布时间:2020-12-14 05:43:21 所属栏目:百科 来源:网络整理
导读:?? 单一职责原则解释:就一个类而言,应该只有一个引起它变化的原因。 ? ?? 我跟大家一样不喜欢看教条,教条太抽象不好理解,那我就举个生活中的例子便于大家理解我们知道现在的手机有拍照,打电话,彩信,摄像,听歌等等很多功能,我们出去旅游的时候其实只

?? 单一职责原则解释:就一个类而言,应该只有一个引起它变化的原因。

?

?? 我跟大家一样不喜欢看教条,教条太抽象不好理解,那我就举个生活中的例子便于大家理解我们知道现在的手机有拍照,打电话,彩信,摄像,听歌等等很多功能,我们出去旅游的时候其实只要带一个手机就好了,坐在车上无聊的时候可以听歌,打游戏,欣赏风景的时候可以拍照,碰到趣人趣事得时候还可以摄像,真是好啊。但是仔细想想,手机听歌有MP4或MP5声效好吗,打游戏有PS效果好吗,拍照有数码相机像素高吗,摄像有SONY摄像机效果好吗,答案是没有,其实有时候一件产品简单一些,职责单一一些或许是更好的选择。

?

?? 我们有时候在做编程的时候,很自然而然的会给一个类增加这样那样的功能,比如:我们要做一个网站,会给这样一个default.aspx.cs后台文件加入算法的代码,数据库访问的SQL语句,业务逻辑的代码等等都写到这个类文件中,这就意味着,无论任何需求要来,你都需要去动这个类文件,这其实是很糟糕的,维护麻烦,复用根本不可能,更别提灵活性了。假如你又要做一个类似的应用程序,不过它运行的平台是手机,Web界面的程序不能使用,那之前的这个Web应用程序如何移植到手机上以达到复用的效果。

?

?? 所以至少至少我们可以将程序分为两个类,一个是业务逻辑类,一个是界面表现类,当有一天要改变界面的时候,不过是界面表现类的变化而已,和业务逻辑类无关,以此达到复用的目的。

?

?? 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化会限制这个类完成其他职责的能力,这是种脆弱的设计,当需求发生变化时,这种设计就崩溃了。

?

?? 本文来自博客园博客,转载请标明出处:http://www.cnblogs.com/menglin2010/archive/2011/03/21/1990870.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读