美文网首页
面向对象设计的SOLID原则章

面向对象设计的SOLID原则章

作者: 无杂货 | 来源:发表于2016-07-07 09:12 被阅读0次

以前一直认为程序中的类有使用到封装继承多态就是面向对象设计,其实不然
封装,继承,多态只是面向对象的三大特性,但是在设计程序的时候并不是说类的结构使用到了(或是体现出了)这三个特性就是面向对象,
其实真正的面向对象设计是要符合下面的五大原则,
面向对象的五大基本原则
单一职责原则(SRP-The Single Responsibility Principle
开放封闭原则(OCP-The Open Closed Principle
里氏替换原则(LSP-The Liskov Substitution Principle
依赖倒置原则(DIP-The Dependency Inversion Principle
接口隔离原则(ISP-The Interface Segregation Principle

单一职责原则(SRP)

• 一个类应该仅有一个引起它变化的原因(最简单,最容易理解却最不容易做到的一个设计原则)职员类例子: 比如在职员类里,将工程师、销售人员、销售经理这些情况都放在职员类里考虑,其结果将会非常混乱,在这个假设下,职员类里的每个方法都要if else判断是哪种情况,从类结构上来说将会十分臃肿,并且上述三种的职员类型,不论哪一种发生需求变化,都会改变职员类!这个是大家所不愿意看到的!

开放封闭原则(OCP)

• 既开放又封闭,对扩展是开放的,对更改是封闭的!
• 扩展即扩展现行的模块,当我们软件的实际应用发生改变时,出现新的需求,就需要我们对模块进行扩展,使其能够满足新的需求!更改封闭即是在我们对模块进行扩展时,勿需对源有程序代码和DLL进行修改或重新编译文件!这个原则对我们在设计类的时候很有帮助,坚持这个原则就必须尽量考虑接口封装,抽象机制和多态技术!

里氏替换原则(LSP)

• 子类可以替换父类并且出现在父类能够出现的任何地方
• 这个原则也是在贯彻GOF倡导的面向接口编程!在这个原则中父类应尽可能使用接口或者抽象类来实现!子类通过实现了父类接口,能够替父类的使用地方!通过这个原则,我们客户端在使用父类接口的时候,通过子类实现!意思就是说我们依赖父类接口,在客户端声明一个父类接口,通过其子类来实现这个时候就要求子类必须能够替换父类所出现的任何地方,这样做的好处就是,在根据新要求扩展父类接口的新子类的时候而不影响当前客户端的使用!

依赖倒置原则(DIP)

• 传统的结构化编程中,最上层的模块通常都要依赖下面的子模块来实现,也称为高层依赖低层!所以DIP原则就是要逆转这种依赖关系,让高层模块不要依赖低层模块,所以称之为依赖倒置原则!

ISP 接口隔离原则

• 这个原则的意思是:使用多个专门的接口比使用单个接口要好的多!这个我有体会,在我实际编程中,为了减少接口的定义,将许多类似的方法都放在一个接口中,最后发现,维护和实现接口的时候花了太多精力,而接口所定义的操作相当于对客户端的一种承诺,这种承诺当然是越少越好,越精练越好,过多的承诺带来的就是你的大量精力和时间去维护!

相关文章

  • 01-设计模式原则

    面向对象的设计原则 面向对象的设计原则也被称为SOLID。SOLID原则包括单一职责原则、开闭原则、里氏替换原则、...

  • 程序设计原则

    设计思想: 面向对象 设计原则: SOLID S: Single Responsibility Principle...

  • 一分钟搞懂SOLID原则

    SOLID原则是面向对象设计的一个基本原则,通过这篇短文我们可以很快了解SOLID原则的核心思想。原文:SOLID...

  • 面向对象设计

    SOLID (面向对象设计) 在程序设计领域, SOLID(单一功能、开闭原则、里氏替换、接口隔离以及依赖反转)是...

  • 面向对象设计的SOLID原则章

    以前一直认为程序中的类有使用到封装继承多态就是面向对象设计,其实不然封装,继承,多态只是面向对象的三大特性,但是在...

  • 面向对象设计原则(SOLID)

    SOLID 是面向对象设计重要原则的首字母缩写.当我们设计类和模块时,遵守 SOLID 原则可以让软件更加健壮和稳...

  • Kotlin 设计模式及实战

    面向对象的设计原则也被称为SOLID。在设计和开发软件时可以应用这些原则,以便创建易于维护和开发的程序。SOLID...

  • 面向对象设计原则(SOLID)

    单一职责 SRP 开闭原则 OCP 里氏置换 LSP 接口隔离 ISP 依赖倒置 DIP 最少知识原则(迪米特法则...

  • SOLID面向对象设计原则

    转载:SOLID面向对象设计原则 这个网页上还有许多设计模式相关的。。标记一下,以后继续看

  • 面向对象设计原则——SOLID

    1. 开放封闭原则 一个软件实体,比如类,模块,函数应该对扩展开放,对修改关闭。既软件实体尽量在不修改原有代码的情...

网友评论

      本文标题:面向对象设计的SOLID原则章

      本文链接:https://www.haomeiwen.com/subject/uaxljttx.html