单一职责原则
来源:互联网 发布:落樱神斧华盛顿知乎 编辑:程序博客网 时间:2024/04/30 03:31
单一职责原则
单一职责原则定义
单一职责原则(Single Responsibility Principle, SRP)定义如下:
一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。
其英文定义为:
Every object should have a single responsibility, and that responsibility should be entirely encapsulated bythe class.
另一种定义方式如下:
就一个类而言,应该仅有一个引起它变化的原因。
其英文定义为:
There should never be more than one reason for a class to change.
单一职责原则分析
- 一个类(或者大到模块,小到方法)承担的职责越多,它被复用的可能性越小,而且如果一个类承担的职责过多,就相当于将这些职责耦合在一起,当其中一个职责变化时,可能会影响其他职责的运作。
- 类的职责主要包括两个方面:数据职责和行为职责,数据职责通过其属性来体现,而行为职责通过其方法来体现。
- 单一职责原则是实现高内聚、低耦合的指导方针,在很多代码重构手法中都能找到它的存在,它是最简单但又最难运用的原则,需要设计人员发现类的不同职责并将其分离,而发现类的多重职责需要设计人员具有较强的分析设计能力和相关重构经验。
单一职责原则实例
某基于Java的C/S系统的“登录功能”通过如下登录类(Login)实现:
0 0
- 单一职责原则(SRP)
- 单一职责原则--SRP
- 单一职责原则
- 单一职责原则
- 单一职责原则SRP
- SRP单一职责原则
- 单一职责原则--SRP
- 单一职责原则
- 单一职责原则--SRP
- 单一职责原则
- SRP:单一职责原则
- 单一职责原则
- 单一职责原则
- 单一职责原则?
- 2.2 单一职责原则
- 单一职责原则
- 单一职责原则
- 单一职责原则--SRP
- 进程间通信--信号
- 数据库的原理
- 获取远程redis服务器上的值
- 从零开始配置redis主从同步
- Zepto.js
- 单一职责原则
- python *args,**kwargs使用
- 第12周项目1:实现复数类中的运算符重载(2)
- 多周期CPU设计
- CodeForces 492D Vanya and Computer Game(二分)
- [知其然不知其所以然-24] ioremap failure
- 《jQuery从入门到精通》第一节 为什么要学习jQuery
- WordPress主题 wpdx 响应式CMS/Blog 双布局5色可选主题[v2.7版]
- Ubuntu12.04 编译安装Sphinx Coreseek3.2.14及PHP Sphinx 扩展库