设计模式01--七大原则

一. 为什么要使用设计模式

为了使代码具有更好的重用性, 可读性, 扩展性, 可靠性和易维护. 实现程序的高内聚, 低耦合.

二. 七大原则:

1. 单一职责:
一个类只负责一个职责
2. 依赖倒置原则
1) 细节依赖抽象, 抽象不应依赖细节
2) 面向接口编程
3) 高层不可依赖底层, 二者都应依赖抽象
3. 接口隔离原则
若接口中有没用到的方法, 则将此接口进行拆分, 保证使用的是最小接口(无没用方法);
4. 里氏替换原则
1) 任何父类出现的地方, 子类也一定要能透明得出现在此; 子类尽量不要重写父类方法, 不然会给程序带来侵入性, 程序的可移植性降低;
2) 尽量不使用继承, 因为增强了耦合, 在适当情况下可使用聚合, 组合, 依赖来解决问题;
5. 迪米特法则(最少知道原则)
1) 一个实体应当尽量少的与其他实体发生相互作用, 是的系统模块相对独立;
2) 对于使用方而言, 提供方越隐蔽越好, 只提供public方法, 具体怎么实现不允许使用方知道;
3) 陌生类(非直接朋友)不允许出现在局部变量中;
PS: 直接朋友--出现在类的成员变量, 方法参数, 方法返回值位置上的类叫做直接朋友
6. 开闭原则
对(提供方)扩展开放, 对(使用方)修改关闭; 实现一个热插拔的效果. 为了使程序的扩展性好, 易于维护和升级. 为了达到这样的效果, 需要使用接口和抽象类;
7. 合成复用原则
尽量使用合成/聚合的方式, 而不是继承
PS:
A合成B: 
	class A{
		private B b = new B();
	}
A聚合B:
	class A{
		private B b = null;
		public void setB(B b){
			this.b = b;
		}
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值