zoukankan      html  css  js  c++  java
  • 面向对象设计的SOLID原则

    S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写。
    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 接口分离原则

    SingleResponsibility Principle  
    单一责任原则:
    当需要修改某个类的时候原因有且只有一个(THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE)。
    换句话说就是让一个类只做一种类型责任,当这个类需要承当其他类型的责任的时候,就需要分解这个类。 
    OpenClosed Principle  
    开放封闭原则
    软件实体应该是可扩展,而不可修改的。也就是说,对扩展是开放的,而对修改是封闭的。
    这个原则是诸多面向对象编程原则中最抽象、最难理解的一个。
    LiskovSubtitution Principle  
    里氏替换原则
    当一个子类的实例应该能够替换任何其超类的实例时,它们之间才具有is-A关系
    DependencyInversion Principle  
    依赖倒置原则
    1. 高层模块不应该依赖于低层模块,二者都应该依赖于抽象
    2. 抽象不应该依赖于细节,细节应该依赖于抽象
    InterfaceSegregation  Principle  
    接口分离原则
    不能强迫用户去依赖那些他们不使用的接口。换句话说,使用多个专门的接口比使用单一的总接口总要好。

    这几条原则是非常基础而且重要的面向对象设计原则。
    正是由于这些原则的基础性,理解、融汇贯通这些原则需要不少的经验和知识的积累。上述的图片很好的注释了这几条原则。

    http://www.cnblogs.com/shanyou/archive/2009/09/21/1570716.html

  • 相关阅读:
    PAT 甲题 1155 Heap Paths
    PAT甲题 1014 Waiting in Line
    PAT甲题 1014 Waiting in Line
    AcWing 840. 模拟散列表
    2019新生赛 %%%xxh
    AcWing 240. 食物链
    AcWing 143. 最大异或对
    AcWing 838. 堆排序
    AcWing 836. 合并集合
    AcWing 837. 连通块中点的数量
  • 原文地址:https://www.cnblogs.com/robertyao/p/9941659.html
Copyright © 2011-2022 走看看