1. 设计模式–七大原则
1.1 设计模式的目的
编写软件过程中,程序员面临着来至 聚合性 ,内聚性 以及可维护性,可扩展行,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有更好的
- 代码重用性(即:相同功能的代码,不用多次编写)
- 可读性(即:编码规范性,便于其他程序员的阅读和理解)
- 可扩展性(即:当需要增加新的功能时,非常方便,称为可维护性)
- 可靠性(即:当我们增加新的功能后,对原来的功能没有影响)
- 使程序呈现高内聚,低耦合的特性
分享金句:
- 设计模式包含了面向对象的精髓,“懂了设计模式,你就懂了面向对象分析和设计的精要”
- Scott Mayers在其巨著《Effective C++》就曾经说过,C++老手和C++新手的区别就是前者手背上有很多伤疤
1.2 设计模式七大原则
设计模式原则,其实就是程序员在编写程序时,应当遵守的原则,也是各种设计模式的基础(即:设计模式为什么这样设计的依据)
设计模式常用的七大原则有:
- 单一职责原则(Single Responsibility Principle)
一个类或者模块只负责完成一个职责(或者功能)
A class or module should have a single responsibility - 接口隔离原则
- 依赖倒置原则
- 里氏替换原则
- 开闭原则
- 迪米特法则
- 合成复用原则
1.3 设计模式原则不同分类
- SOLID
Single Responsibility Principle:单一职责原则
Open Closed Principle:开闭原则
Liskov Substitution Principle:里氏替换原则
Law of Demeter:迪米特法则
Interface Segregation Principle:接口隔离原则
Dependence Inversion Principle:依赖倒置原则 - KISS
KISS原则是英语 Keep It Simple, Stupid 的首字母缩写。KISS原则是指在设计当中应当注重简约的原则。同时这原则亦有应用在商业书信、设计电脑软件、动画、工程上。 - YAGNI
YAGNI stands for “you aren’t gonna need it”: don’t implement something until it is necessary. - DRY
Don’t Repeat Yourself,直译就是不要重复你自己。 - LOD
Law of Demeter:迪米特法则
注:本文是根据尚硅谷和极客学院的课程整理的学习笔记,如要深入理解,请收看老师的原版视频。