软件设计中的六大原则

1.单一职责原则:一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中降低类的复杂性,类的职责清晰明确比如数据职责和行为职责清晰明确变更引起的风险减低,变更是必不可少的,如果接口的单一职责做的好,一个接口修改只对相应的类有影响,对其他接口无影响,这对系统的扩展性,维护性都有非常大的帮助。
2. 开放封闭原则:一个软件实体(如类、模块和函数)应该对扩展开放,对修改关闭。意思是,在一个系统中或者模块中,对于扩展是开放的,对于修改时关闭的,一个好的系统是在不修改源代码的情况下,可以扩展你的功能。而实现开闭原则的关键就是抽象化。如设计模式中模板方法模式和观察者模式都是开闭原则的极好体现。

3.里氏替换原则:任何基类可以出现的地方,子类也可以出现;这一思想表现为对继承机制的约束规范,只有子类能够替换其基类时,才能够保证系统在运行期内识别子类,这是保证继承复用的基础。如正方形是长方形是理解里氏替换原则的经典例子。

4。接口隔离法则:。客户端不应该依赖那些它不需要的接口是指使用多个专门的接口,而不使用单一接口的总接口每一个接口应该承担一种独立的角色,不多不少,不干不该干的事,该干的事都要干。

5.依赖倒置原则:要依赖抽象,而不需要依赖具体的实现,具体而言就是高层模块不依赖于底层模块,二者共同依赖于抽象。抽象不依赖于具体,具体依赖于抽象。

6。合成/聚合复用原则:要尽量使用对象组合,而不是继承关系达到软件复用的目的就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新对象通过向这些对象的委派达到复用已有功能的目的。简而言之,要尽量使用合成/聚合,尽量不要使用继承,组合/聚合可以使系统更加灵活,类与类之间的耦合度降低,一个类的变化对其他类造成的影响相对较少,因此一般首选使用组合/聚合来实现复用;其次才考虑继承。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值