Fork me on GitHub

软件设计原则

design pattern

Posted by Kaelzhang on July 5, 2015

img

今天做了一个关于软件设计原则的培训,分享一下各种软件设计原则.

抽象层次由高到低分别是:

  • 高内聚,低耦合

  • 正交四原则

    • 消除重复

    • 分离关注点(SoC)

    • 缩小依赖范围

    • 向稳定依赖

  • SOLID原则

    • The Single Responsibility Principle 单一职责

    • The Open Closed Principle 开闭原则

    • The Liskov Substitution Principle 里氏替换原则

    • The Interface Segregation Principle 接口分离原则

    • The Dependency Inversion Principle 依赖倒置原则

  • 其他原则

    • DRY(Don’t Repeat Yourself): 在一个系统内,任何一项知识都只应该存在一个明确而权威的表示。(可以有多个表示,但仅一个表示为权威)

    • The Singular Responsibility Principle

    • OAOO(once and only once)

    • YAGNI(You Ain’t Gonna Need It): 尝试预测未来,可能应对未来,绝不实现未来!

    • TDA(Tell,Don’t Ask)

    • KISS(KEEP IT SIMPLE, STUPID!)

    • LKP(Least Knowledge Principle) 最少知识原则/Law of Demeter 笛米特法则

    • Do One Thing, Do It Well.


  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!