设计模式

13 篇文章 0 订阅
11 篇文章 0 订阅

设计模式是什么

设计模式是软件设计中常见问题的典型解决方案,每一个设计模式就像一张蓝图,可以通过它进行定制来解决代码中反复出现的问题。

设计模式与方法和库的使用方式不同,很难直接在自己的程序中套用某一个设计模式,模式也不是一段特定的代码,而且是解决特定问题的一般性概念。可以根据模式来实现符合自己程序实际所需的解决方案。

模式包含哪些内容

大部分模式都有正规的描述方式,便于在不同的情况下使用,模式的描述包括以下部分:

  • 意图部分简单描述问题和解决方案

  • 动机部分将进一步解释问题并说明模式会如何提供解决方案。

  • 结构部分展示模式的每一个部分和它们之间的关系。

  • 在不同语言中的实现 提供流行编程语言的代码,让读者更好理解模式背后的思想。

为什么以及如何学习设计模式

设计模式是针对软件设计中常见的问题工具箱,其中的工具就是各种经过实践验证的解决方案,即使从未遇到过这些问题,了解模式依然非常有用,它可以指引你如何使用面向对象的设计原则来解决问题。

设计模式定义了一种让你和成员能够高效沟通的语言,你只需要说一声“这里用单例就可以了”,所有人都会理解这个建议背后的想法,也就是只需要知道模式名称,就无须解释原因。

设计模式分类

不同设计模式复杂程度、细节层次、以及在整个系统的应用范围方面各不相同。

最基础的、最底层的通常被称为惯用技巧,这类模式一般只能在一种语言中使用。

最通用的高层的模式是构架模式,开发者可以在任何语言中使用这类模式,与其他模式不同,他可以用于整个程序的架构设计。

所有模式根据其意图或者目的来分类,主要的类别是:

  • 创建型模式 提供创建对象的机制,增加已有代码的灵活性和可服用性。

  • 结构型模式 介绍如何将对象和类组装成较大的结构,并同时保持结构的灵活和高效。

  • 行为模式 负责对象间的高效沟通和职责委派。

设计模式目录

创建型模式

  • 工厂方法

  • 抽象工厂

  • 生成器

  • 原型

  • 单例

结构型模式

  • 适配器

  • 桥接

  • 组合

  • 装饰

  • 外观

  • 享元

  • 代理

行为模式

  • 责任链

  • 命令

  • 迭代器

  • 中介者

  • 备忘录

  • 观察者

  • 状态

  • 策略

  • 模版方法

  • 访问者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值