C#面向对象设计模式学习笔记 - 开篇
做程序员已经有三年半了,每天都在同一个框架做着相同的事情,对一个开发人员而言,确实是一件可悲的事情。随着年龄的增长,危机感也越来越强了,再不充电恐怕真的要被淘汰了。
我把学习设计模式作为我充电计划的第一门课程,教材选用的是李建忠前两年在WebCasts中的《C#面向对象设计模式纵横谈系列课程》。
面向对象设计模式与原则
设计模式原则:
单一职责原则(SRP):一个类应该仅有一个引起它变化的原因。
开放封闭原则(OCP):对扩展开放,对更改封闭。
Liskov替换原则(LSP):子类必须能够替换他们的基类(is a)。
依赖倒置原则(DIP):高层模块不应该依赖底层模块,二者都应该依赖抽象;抽象不应该依赖于实现细节,实现细节应该依赖于抽象接口。
隔离原则(ISP):不应该强迫客户程序依赖他们不用的方法。
设计模式分类:
-
从目的看:
创建型模式
结构型模式
行为型模式
-
从范围看:
类模式 处理 类与子类 的 静态关系
对象模式 处理 对象间 的 动态关系
二十三种设计模式: