定义
1. 软件模式
软件模式
是在软件开发中某些可重现问题的一些有效解决方法,软件模式的基础结构
主要由四部分构成,包括问题描述【待解决的问题是什么】、前提条件【在何种环境或约束条件下使用】、解法【如何解决】和效果【有哪些优缺点】,如图1-1所示:
图1-1 软件模式基本结构
2.设计模式
设计模式共有23种,5种创建型,7种结构型,11种行为型。
-
设计模式:每个模式都为某一个可重复的设计问题提供了一套解决方案。可以进行分类:
- 创建型模式:为了解决创建型问题,
为了创造对象
- 结构型模式:为了解决结构问题,
类或者对象的组合
- 行为模式:负责对象间的高效沟通和职责委派(不太理解)
行为型模式主要用于描述类或对象怎样交互以及怎样分配职责
。
- 创建型模式:为了解决创建型问题,
-
此外,根据某个模式主要是用于处理类之间的关系还是对象之间的关系,设计模式还可以分为
类模式
和对象模式
。我们经常将两种分类方式结合使用,如单例模式是对象创建型模式,模板方法模式是类行为型模式。
3.目标
能够满足一下几条:
- 能够知道这个设计模式解决什么样的问题,什么情景使用。
- 如何解决的问题, 记住流程图,能手写出核心代码。
- 能够说出两个应用场景,一个生活中,一个软件中。
- 掌握这个模式的优缺点,使用时需要注意的地方。
4. 面向对象设计原则
核心就是在支持可维护性的前提下提高可复用性。
在面向对象设计中,可维护性的复用是以设计原则为基础的。每一个原则都蕴含一些面向对象设计的思想,可以从不同的角度提升一个软件结构的设计水平。