学习设计模式的开场就是学习六大原则,因为这六大原则的出现,才使得最后的面向对象的TV模式大赛真心的激烈啊。现在我们就来看看我们的六大原则。
单一职责原则(SRP):
从小菜和大鸟拍摄UFO来谈起,讲述了手机的像素不好,就是因为功能多而且杂,告诉意见产品简单一些,职责简单一些,是更好地选择。也就是单一制责原则。及就一个类而言,应该仅有一个引起...
分类:
其他好文 时间:
2014-12-13 21:51:55
阅读次数:
307
容器的主要职责有两个:存放元素和浏览元素。根据单一职责原则(SRP)要将二者分开,于是将浏览功能打包封装就有了迭代器。用迭代器封装对动态数组的遍历:12{《HeadFirst设计模式》之迭代器模式}3{容器中的元素类}4{编译工具:Delphi7.0}5{E-Mail:guzh-0417@163.....
面向对象设计的SOLID原则
SRP The Single Responsibility Principle 单一责任原则
OCP The Open Closed Principle 开放封闭原则
LSP The Liskov Substitution Principle 里氏替换原则
DIP The Dependency Inversion Principle 依赖倒置原则
ISP...
分类:
其他好文 时间:
2014-10-12 11:50:17
阅读次数:
250
设计模式之6大原则一、设计模式6大原则名称解释0、单一职责原则(SRP)就一个类而言,应该仅有一个引起它变化的原因。一、"开放-封闭"原则(OCP)在软件设计模式中,这种不能修改,但可以扩展的思想也是最重要的一种设计原则。即软件实体(类、模板、函数等等)应该可以扩展,但是不可修改。【通俗】:设计的时...
分类:
其他好文 时间:
2014-10-09 13:56:13
阅读次数:
202
定义:
简单来说,单一职责原则(SRP)就是对对一个类而言,应该仅有一个引起它变化的原因。
什么是职责?
在SRP中,职责 = a reason for change 。如果你能想到多于一个的动机去改变一个类,那么这个类就具有多于一个职责。
具体的例子可以看敏捷软件开发 p91 。
SRP是所有原则找那个最简单的之一,也是最难...
分类:
其他好文 时间:
2014-09-20 16:19:19
阅读次数:
159
1. 单一职责原则(SRP: Single Resposibility Principle) 用“职责”或“变化原因”来衡量接口或类设计得是否优良,但“职责”和“变化原因”都是不可度量,因项目而异。 好处: 类的复杂性降低,职责有清晰明确...
分类:
其他好文 时间:
2014-09-17 01:14:31
阅读次数:
221
单一职责原则单一职责原则(Simple responsibility pinciple SRP)就一个类而言,应该仅有一个引起它变化的原因,如果你能想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。应该把多于的指责分离出去,分别再创建一些类来完成每一个职责。单一职责原则是软件设计7大原...
分类:
其他好文 时间:
2014-09-10 12:08:30
阅读次数:
204
上节我们说一个厨子要满足SRP原则,做好自己的本职工作,我们可以通过继承和接口两种方式实现。但是现在又出现了一个新的问题:本来这个厨子在学校主学川菜专业,然后在湖南找了一份工作,不得不学习湘菜。学就学呗,谁知顶头上司又是广东人,还得学做粤菜。如果对于一上一节定义的Cooker类来说,今天加一个方法,明天再加一个方法,后天发现某个方法不实用了,再删掉。这样,程序显得杂乱无章。不仅没有效率而且很容易出错。为了解决这类问题,我们想到了OCP原则,即一个软件实体(类,模块,函数等)应当为扩展而开放,又为修改而封闭。...
分类:
其他好文 时间:
2014-09-04 13:25:22
阅读次数:
179
一个厨子可以做出一手好菜,也许他是新东方毕业的或者是祖传秘方。你让他做上一桌佳肴那是简单、快乐而又高效的,然而让他编程就会成为一种苦恼并且让人想不通的一件事。也许这个比喻不是很恰当,但是对于每个类来说,他们就像一个一个的actor,也许是厨子也许是司机,他们应该关注于自己的领域,这样会更加高效而且简明。源于这一思想,我们发现了SRP这个原则,即:单一职责原则。...
分类:
其他好文 时间:
2014-09-03 21:21:07
阅读次数:
371
使用UML不仅可以形象化的表达我们的程序思想,而且可以帮助我们提高程序的质量。一个杂乱无章的程序让维护者望而生畏,其成本也可想而知。在面向程序设计(OOD)中有5条原则是帮助我们设计一个高效、简洁的程序:1.单一职责原则(SRP) 2.开放-闭合原则(OCP) 3.Liskov替换原则(LSP) 4.依存关系倒置原则(DIP) 5.接口隔离原则(ISP).然而这5个原则不是本节讨论的重点,我们将从一个更简单基础的部分入手-JUnit。...
分类:
其他好文 时间:
2014-09-03 18:16:27
阅读次数:
213