软件设计模式
设计模式含义:
在特定环境下,为解决某一特定通用软件问题提供的一套定制的解决方案,该方案描述了对象与类之间的作用。
三类面向对象设计模式:
1. 创建型模式:
用于创建对象
(工厂方法模式、抽象工厂模式、生成器模式、单例模式等)
工厂方法模式:https://blog.youkuaiyun.com/LemonSnm/article/details/83010690
2. 行为型模式:
处理类与对象的组合
(迭代器模式、访问者模式、命令模式、中介者模式、策略模式和状态模式等)
3. 结构型模型:
描述类与对象怎样交互和怎样分配
(组合模式、适配器模式、外观模式、桥接模式等)
四个基本要属:
1. 模式名称
2. 问题
3. 解决方案
4. 效果
三个层次:
1. 架构模式
2. 设计模式
3. 习惯用法
开闭原则:
特征:
- 对于扩展是开放的(Open for extension)。这意味着模块的行为是可以扩展的,既当需求改变时,软件开发者可以对模块进行扩展,增加新功能。
2. 对于修改是封闭的(Close for modification)。在模块进行扩展时,不允许改动模块中已经存在的类的源代码。