面向对象设计原则

单一职责原则(SRP)

       就一个类而言,应该仅有要给引起它变化的原因(一个类只负责一个功能领域中的相应职责)

       单一职责原则是实现高内聚、低耦合。

开放-封闭原则

       是说软件实体(类、模块、函数等)应该可以扩展,但是不可修改

开放-封闭原则的两个特征

  1. 对于扩展是开放的(Open for extension)
  2. 对于更改是封闭的(Closed for modification)

要求:面对需求的改变可以保持相对稳定,从而使得系统可以在第一个版本以后不断退出新的版本。

       开放-封闭原则是面向对象设计的核心所在,遵循这个原则可以带来面向对象技术所生成的巨大好处,即可维护、可扩展、可复用、灵活性好。

       开发人员应该仅对程序中呈现出频繁变化的那些部分做出抽象,然而,对于应用程序中的每个部分都可以地进行抽象同样不是一个好主意,拒绝不成熟地抽象和抽象本身一样重要。

       对程序的改动是增加新代码,而不是更改现有的代码

依赖倒转原则

  1. 高层模块不应该依赖低层模块,两个都应该依赖抽象
  2. 抽象不应该依赖细节,细节应该依赖抽象。

       依赖倒转可以说是面向对象设计的标志,用哪种语言编写程序不重要,如果编写时考虑的都是如何针对抽象编程而不是针对细节编程,即程序中所有的依赖关系都是终止与抽象类或者接口,那就是面向对象的设计,反之,即为过程化设计。

       强内聚,低耦合

里氏代换原则

       一个软件实体如果使用的是一个父类的画,那么一定适用于其子类,而且它察觉不出父类对象和子类对象的区别,即,在软件里面,把父类都替换称它的子类,程序的行为没有变化。---子类必须能够替换掉其的父类。

合成复用原则

接口隔离原则(Interface Segregation Principle,IRP)就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分,新对象通过向这些对象的委派达到复用已用功能的目的,简单的说,就是要尽量使用合成/聚合,尽量不要使用继承

Is—A:指一个类是另一个类的“一种”

Has—A:表示某一个角色具有某一项责任。

接口隔离原则

接口隔离原则(Interface Segregation Principle,ISP),指的是使用多个专门的接口比使用单一的总接口要好,也就是说不要让一个单一的接口承担过多的职责,而应把每个职责分离到多个专门的接口种,进行接口分离过于臃肿的接口是对接口的一种污染。

迪米特法则

迪米特法则(Law of Demeter,LOD)又叫最少知识原则(Leask Knowledge Principle,LKPI)指的是一个对象应当对其他对象有尽可能少的了解。也就是说,一个模块或对象应尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立,这样当一个模块修改时,影响的模块就会越少,扩展起来更加容易。

外观模式、中介者模式,使用了迪米特法则

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值