设计模式-七大原则

七大原则

23种设计模式,遵守软边编写的七大原则,因此学好设计模式必要理解软件编写的七大原则

单一职责原则

每个类均应只负责某一项职责。当类中的逻辑比较简单,方法比较少时,可以在方法级别上遵守单一职责原则。即每个方法负责一项职责。

如UserDao只应该负责关于用户这一项职责,UserDao的所有方法只应该 针对User表进行增删改查,不应该出现其它表的操作。

当多个职责耦合在一起,其中一个职责发生变化可能会影响其它职责。

里氏替换替换原则

继承产生的弊端,比如使用继承会给程序带来侵入性,程序的可移植性降低,增加对象间的耦合性,如果一个类被其它的类所继承,则当这个类需要修改时,必须考虑到所有的子类,并且父类修改后,所有涉及到子类的功能都有可能产生故障。

里氏替换原则是程序中用到父类的地方都可以用其子类替换,所以要求其子类尽量不要去重写父类已经实现的方法,因为子类重写了父类的方法的话,当用到父类的地方用子类代替以后会导致调用子类重写的方法,不会去调用父类的方法,会导致程序出现错误。

依赖倒置原则

核心思想面向接口编程,细节依赖抽象。
细节:实现类
抽象:接口
类不要直接依赖其它类,要通过接口依赖其它的实现类。

接口隔离原则

例:当B接口有5个抽象方法(method1,method2,method3,method4,method5)
,类A需要用到method1,method2,method5所以只需要实现这三个方法,有两个方法没必要实现。
类C需要用到method3,method4,method5所以也只需要实现三个方法,有两个方法没必要实现。
这种情况下就需要用遵守接口隔离原则进行接口拆分。
将B接口拆分为三个接口分别拥有方法(method3,method4),(method1,method2),(method5)类A,C分别去实现对应的接口。

迪米特法则

最少知道原则,即一个类对自己依赖的类(A依赖B)知道的越少越好。被依赖的类(B)尽量将自己的逻辑封装在自己的内部,提供一个public方法供外部(A)调用,不要在A类去访问B类的信息,将B类的逻辑在A类实现。
直接朋友:每个类都会与其它类产生耦合,我们称出现成员变量,方法参数,方法返回值中的类为直接朋友,而在局部变量中出现的类不是直接朋友,迪米特法则避免不是直接朋友的出现

开闭原则

对扩展开放(提供方),对修改关闭(对使用方)。
一般都是使用方依赖的抽象类型的对象(接口或者抽象类),去调用抽象方法完成某件事,当需要增加功能时,只需要提供方去增加一个实现类去实现这个功能。使用方只需要控制类型。

合成复用原则

尽量使用合成、聚合的方式代替继承

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值