鲍勃大叔说: 单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因。 我最开始理解成只能有一个原因去改变,跟我以前的认知有问题,从我开始学OOP以来,我觉得一个类就是一个事物的抽象,比如书,BOOK类,如果按照我理解的意思,book类就有很多可以改变它的原因,例如翻书或者买书,我感觉S ...
分类:
其他好文 时间:
2017-11-21 14:49:55
阅读次数:
159
设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。 解决方案:遵循单一职责原则。分别建立两 ...
分类:
其他好文 时间:
2017-11-21 10:42:35
阅读次数:
137
一、单一职责原则(SRP Single Responsibility Principle) 不要存在多于一个导致类变更的原因。通俗来说,即一个类只负责一项职责。 二、里氏替换原则(LSP Liskov Substitution Principle) 1. 如果对每一个类型为T1的 对象o1,都有类型 ...
分类:
其他好文 时间:
2017-11-17 18:36:07
阅读次数:
314
什么是迭代器? 其实就是对一个对象内部进行遍历的方法,比如jquery的each方法,或者原生js的foreach方法。 迭代器的特点 针对迭代器,这里有几个特点: ? 访问一个聚合对象的内容而无需暴露它的内部。 ? 为遍历不同的集合结构提供一个统一的接口,从而支持同样的算法在不同的集合结构上进行操 ...
分类:
其他好文 时间:
2017-11-16 22:01:50
阅读次数:
155
以前一直认为程序中的类有使用到封装继承多态就是面向对象设计,其实不然 封装,继承,多态只是面向对象的三大特性,但是在设计程序的时候并不是说类的结构使用到了(或是体现出了)这三个特性就是面向对象, 其实真正的面向对象设计是要符合下面的五大原则, 面向对象的五大基本原则单一职责原则(SRP)开放封闭原则 ...
分类:
其他好文 时间:
2017-11-16 14:14:54
阅读次数:
147
一: 单一职责原则:就一个类而言,应该只有一个引起它变化的原因。 二: 开闭原则:软件实体对扩展开放,对修改关闭。 三: 里式代换原则:子类型必须能够替换掉它们的父类型。 四: 依赖倒转原则:抽象不应该依赖细节,细节应该依赖抽象。应该面向接口编程。 ...
分类:
其他好文 时间:
2017-11-10 00:10:49
阅读次数:
153
单一职责原则 单一职责原则(Single Responsibility Principle,简称SRP)的英文原话是:there should nerver be moren than one reason for a class to change.意思是一个类,应当只有一个引起它变化的原因。即一 ...
分类:
其他好文 时间:
2017-11-09 22:36:19
阅读次数:
185
状态模式设计原则:遵循单一职责、依赖倒置、开闭原则常用场景:一个对象在多个状态下行为不同,且这些状态可互相转换使用概率:20%复杂度:中变化点:状态的种类选择关键点:这些状态是否经常在运行时需要在不同的动态之间相互转换逆鳞:无相关设计模式策略模式:二者的实现方式非常相似,策略接口与状态接口,具体的策... ...
分类:
其他好文 时间:
2017-11-07 18:08:31
阅读次数:
208
Single Responsibility Principle 简称SRP,定义为:应该有且仅有一个原因引起类的变更,也就是将对象的属性和行为进行分离,通过一个接口变两个接口来实现分离。一个接口或类只有一个原因引起变化,也就是一个接口或一个只有一个职责,负责一件事情。生搬硬套单一原则会引起类的剧增, ...
分类:
其他好文 时间:
2017-11-07 17:57:51
阅读次数:
184
策略模式设计原则:遵循单一职责、依赖倒置、迪米特、开闭原则常用场景:算法或者策略需要经常替换使用概率:60%复杂度:中变化点:策略的种类选择关键点:客户端是否依赖于某一个或若干个具体的策略逆鳞:无主要思想:实际就是简单的接口实现对外提供一套约定好的方法即接口,然后进行不同的实现一般使用在相差不大的一... ...
分类:
其他好文 时间:
2017-11-03 16:45:20
阅读次数:
147