设计模式-单一职责原则
2015-11-20 17:36
176 查看
1.单一职责原则
单一职责原则:改变仅因为一个因素
《设计模式之禅》,作者提到有人写了个这样的接口
不如分开写
虽然如作者提到的,下面的替代上面的,到底是不是应该替换呢?看的代码不够多,不知道……
在我看的HGE的引擎代码中,作者是将两者结合,对外提供第一种接口,对内实现的过程中会将不同的分开写成第二种形式的函数,内部调用。
那么是喜欢这种
还是喜欢这种
对于扩展功能而言,明显上面的不够好,因为要修改changeUser函数
如果要修改相对应的change函数,则上面那种要修改changeUser和对应的change函数
--151120
单一职责原则:改变仅因为一个因素
《设计模式之禅》,作者提到有人写了个这样的接口
void changeUser(UserOB userOB,changeOptions option);
不如分开写
void changeUserName(String userName); void changeUserAddress(String address); void changeUserTel(String Tel);
虽然如作者提到的,下面的替代上面的,到底是不是应该替换呢?看的代码不够多,不知道……
在我看的HGE的引擎代码中,作者是将两者结合,对外提供第一种接口,对内实现的过程中会将不同的分开写成第二种形式的函数,内部调用。
那么是喜欢这种
changeUser(USER_NAME,"lily"); changeUser(USER_ADDRESS,"heave"); changeUser(USER_TEL,"138XXXXXX110");
还是喜欢这种
changeUserName("Tom"); changeUserAddress("hell"); changeUserTel("189XXXXXX911");
对于扩展功能而言,明显上面的不够好,因为要修改changeUser函数
如果要修改相对应的change函数,则上面那种要修改changeUser和对应的change函数
--151120
相关文章推荐
- The Apache Tomcat Native library which allows optimal performance 的解决
- Jquery Table 的基本操作
- a primary example for Functional programming in javascript
- stl_relops.h
- 贪心法实现无向图的划分
- 变量的初始化顺序
- 写一手好的C++代码 ,利用Strategy模式写的
- shell之nginx安装+虚拟主机
- java/excel上传,解析,导入数据库
- IOS常用的设计模式以及对应的优势
- 实习整理(十一)
- mysql备份策略的制定
- 线程同步的三种方案
- 设置DOS系统时间
- stl_algo.h
- 多平台的网站实现单点登录系统(SSO)的开发思路 让你的会员中心更加统一(参考资料)
- Universal-Image-Load开源框架2
- 提供向上的导航
- ffmpeg bit_rate分析
- ffmpeg bit_rate分析