随笔分类 - 设计模式
摘要:定义: 一个软件实体如类,模块和函数应该对扩展开放,对修改关闭。 什么是开闭原则 开闭原则明确的告诉我们:软件实现应该对扩展开放,对修改关闭,其含义是说一个软件实体应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化的。那什么是软件实体呢?软件实体包括以下几个部分: 项目或软件产品中按照一定的
阅读全文
摘要:定义:一个对象应该对其他对象有最少的了解。 通俗的讲:一个类对自己需要耦合或调用的类知道的最少,你(被耦合或调用的类)的内部是如何复杂和我没有关系,我就知道你提供的public方法,我只调用这些方法,其它的我不关心。 迪米特原则的具体要求 迪米特原则还有一个解释:Only talk to your
阅读全文
摘要:在讲接口隔离原则之前,我们先明确一下我们的主角,什么是接口,接口分为两种: 一种是实例接口 (Object Interface),在 Java 中声明一个类,然后用 new 关键字产生的一个实例,它是对一个类型的事 物描述,这是一种接口,比如你定义个 Person 这个类,然后使用 Person z
阅读全文
摘要:3.1 依赖倒置原则的定义 含义: 高层模块不应该依赖低层模块,两者都应该依赖其抽象; 抽象不应该依赖细节; 细节应该依赖抽象。 高层模块和低层模块容易理解,每一个逻辑的实现都是由原子逻辑组成的,不可分割的原子逻辑就是低层模块,原子逻辑的再组装就是高层模块。那什么是抽象,什么又是细节呢?在Java语
阅读全文
摘要:里氏替换原则: 面向对象有三大特性:封装、继承、多态。所以我们在实际开发过程中,子类在继承父类后,根据多态的特性,可能是图一时方便,经常任意重写父类的方法,那么这种方式会大大增加代码出问题的几率。比如下面场景:类C实现了某项功能F1。现在需要对功能F1作修改扩展,将功能F1扩展为F,其中F由原有的功
阅读全文
摘要:定义: 该原则规定每个类都应该只有一个单一的功能,并且该功能应该由这个类完全封装起来。 何为职责? 既然是单一“职责”,那么职责即为被规定的因素。 概括:"功能(职责)"为改变的原因,一个类或者模块应该有且只有一个改变的原因。 概括:"功能(职责)"为改变的原因,一个类或者模块应该有且只有一个改变的
阅读全文

浙公网安备 33010602011771号