
设计模式
qingxukang
这个作者很懒,什么都没留下…
展开
-
设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。 简单工厂简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。转载 2016-05-10 14:32:00 · 226 阅读 · 0 评论 -
设计模式之六大原则——单一职责原则(SRP)
定义:应该有且仅有一个原因引起类的变更。There should never be more than one reason for a class to change. 优点:1、类的复杂性降低,实现什么职责都有清晰明确的定义;2、可读性提高,复杂性减低,可读性当然提高;3、可维护性提高,可读性提高,可维护性当然提高;4、变更引起的转载 2016-05-10 13:53:40 · 239 阅读 · 0 评论 -
设计模式之六大原则——里氏替换原则(LSP)
里氏替换原则(Liskov Substitution Principel)是解决继承带来的问题。 继承的优点:代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性;提高代码的重用性;子类可以形似父类,但又异于父类;提高代码的可扩展性;提高产品或项目的开放性。继承的缺点:继承是侵入性的,只要继承就必须拥有父类的所有属性和方法;降低代码的灵活性,子类必须转载 2016-05-10 13:54:09 · 375 阅读 · 0 评论 -
设计模式之六大原则——依赖倒置原则(DIP)
依赖倒置原则(Dependence Inversion Principle,DIP)的原始定义:高层模块不应该依赖底层模块,两者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 依赖倒置原则在Java语言中的表现是:模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或者抽象类产生的;接口或抽象类不依赖于实现类;实现类依赖接口或抽象转载 2016-05-10 13:54:46 · 248 阅读 · 0 评论 -
设计模式之六大原则——接口隔离原则(ISP)
接口隔离原则 Interface Segregation Principle 定义:客户端不应该依赖它不需要的接口类间的依赖关系应该建立在最小的接口上我们可以把这两个定义概括为一句话:建立单一接口,不要建立臃肿庞大的接口。再通俗一点讲:接口尽量细化,同时接口中的方法尽量少。提供给每个模块的都应该是单一接口,提供给几个模块就应该有几个接口,而不是建立一个庞转载 2016-05-10 13:55:33 · 216 阅读 · 0 评论 -
设计模式之六大原则——迪米特法则(LoD,LKP)
定义:迪米特法则(Law of Demeter,LoD)也称为最少知识原则(Least Knowledge Principle,LKP)。一个对象应该对其他对象有最少的了解。通俗地讲,一个类应该对自己需要耦合或调用的类知道得最少,你(被耦合或调用的类)的内部是如何复杂都和我没关系,那是你的事情,我就知道你提供的public方法,我就调用这么多,其他的一概不关心。 含转载 2016-05-10 13:56:05 · 341 阅读 · 0 评论 -
设计模式之六大原则——开闭原则(OCP)
开闭原则(Open Closed Principle)是Java世界里最基础的设计原则,它指导我们如何建立一个稳定的、灵活的系统。 定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。Softeware entities like classes,modules and functions should be open for extension but转载 2016-05-10 13:56:47 · 251 阅读 · 0 评论 -
OOA/OOD/OOP的区别
这是一个故事: "工程师修了一条隧道,隧道的一端就是美丽的风景,很多人会开车通过隧道.虽然隧道内已经有灯了,但是设计者担心隧道可能会停电,所以在隧道的入口立了牌子,提醒驾驶员进入隧道前开灯.可是由此却使得驾驶员由于看到美丽的风景而忘记关灯的情况的发生." 引来对ooa,ood,oop的理解; 分析师拿到了政府,民众,组织,社团等的需求,这里泛指所有来自客户的需求了;了解需求,分析需转载 2016-05-16 10:20:29 · 364 阅读 · 0 评论