- ISBN:9787302601982
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:353
- 出版时间:2022-07-01
- 条形码:9787302601982 ; 978-7-302-60198-2
本书特色
本书将逐一详解二十四个常见的设计模式。书中将摆脱以往枯燥的单纯介绍设计模式的讲解方法,以一个实际的游戏案例贯穿讲解。
内容简介
本书逐一详解24种常见的设计模式,并以一个实际的游戏案例贯穿全书,摆脱了以往单纯介绍设计模式的枯燥。在讲解过程中,一般会首先说明传统编码中将会面临的问题,面后随着需求的不断增加和变化重构代码,从而引出各种设计模式的实际运用,帮助读者理解该模式要解决的问题以及详细实现该设计模式的方法,使读者理解和明白在遇到什么样的问题时可以利用哪种设计模式来解决。 全书共22章,此外还包括附录A和附录B。其中,第1章是理论知识,包括对设计模式和软件开发思想的介绍以及具体编程环境搭建工作的说明:第2~22章逐一详解24个设计模式:附录A和附录B同样有极高的学习价值和参考价值,不可错过。 本书适合中高级C++开发者学习参考,同时配套有全部实例源代码、配套开发工具及更多学习资源。
目录
第1章 设计模式与软件开发思想、编程环境介绍
1.1 设计模式概述
1.1.1 设计模式基本概念
1.1.2 设计模式中的抽象思维
1.1.3 学习设计模式普遍存在的问题
1.1.4 设计模式的缺点
1.1.5 设计模式在实际工作中的应用和学习方法
1.1.6 学习设计模式的态度、方法和本书的特点
1.2 软件开发思想、设计模式分类与讲解规划
1.2.1 大型项目的软件开发思想
1.2.2 设计模式分类及讲解规划
1.3 C++编程环境介绍
1.3.1 C++编程环境搭建说明
1.3.2 创建*基本的能运行的C++程序
1.3.3 Visual Studio中程序的调试方法
第2章 模板方法模式
2.1 一个具体实现范例的逐步重构
2.2 引入模板方法模式
2.3 模板方法模式的UML图
2.4 程序代码的进一步完善及应用联想
第3章 工厂模式、原型模式、建造者模式
3.1 工厂模式
3.1.1 简单工厂模式
3.1.2 工厂方法模式
3.1.3 抽象工厂模式
3.2 原型模式
3.2.1 通过工厂方法模式演变到原型模式
3.2.2 引入原型模式
3.3 建造者模式
3.3.1 一个具体实现范例的逐步重构
3.3.2 引入建造者模式
3.3.3 另一个建造者模式的范例
3.3.4 建造者模式的总结
第4章 策略模式
4.1 一个具体实现范例的逐步重构
4.2 依赖倒置原则
第5章 观察者模式
5.1 一个遍历问题导致的低效率范例
5.2 引入观察者模式
5.3 应用联想
第6章 装饰模式
6.1 问题的提出
6.2 引入装饰模式
6.3 另一个装饰模式的范例
第7章 单件模式
7.1 单件类的基本概念和实现
7.2 单件类在多线程中可能导致的问题
7.3 饿汉式与懒汉式
7.4 单件类对象内存释放问题
7.5 单件类定义、UML图及另外一种实现方法
第8章 外观模式
8.1 一个配置相关的范例
8.2 引入外观模式
8.3 另一个外观模式的范例
第9章 命令模式
9.1 通过一个范例引出命令模式代码编写方法
9.2 引入命令模式
9.3 命令模式用途研究
9.3.1 改造范例增加对象使用时的独立性
9.3.2 命令模式使用场景与特点总结
第10章 迭代器模式
10.1 容器和迭代器的简单范例
10.2 单一职责原则
10.2.1 单一职责原则的定义
10.2.2 内聚与耦合
10.3 迭代器模式的范例及现代C++中的迭代器
10.3.1 迭代器模式范例
10.3.2 现代C++中的迭代器
第11章 组合模式
11.1 一个基本的目录内容遍历范例
11.2 使用组合模式改造目录内容遍历范例
11.3 引入组合模式
11.4 透明组合模式与安全组合模式
11.5 其他使用组合模式的场景探讨
第12章 状态模式
12.1 一个基本的状态转换范例
12.2 引入状态模式
12.3 状态类的单件实现方式
第13章 享元模式
13.1 从一个典型的范例开始
13.2 引入享元模式
第14章 代理模式
14.1 基本概念和范例
14.2 引入代理模式
14.3 代理模式的应用场合探究
14.3.1 代理模式常用应用场景
14.3.2 缓存/缓冲代理范例
第15章 适配器模式
15.1 一个简单的范例
15.2 引入适配器模式
15.3 类适配器
15.4 适配器模式的扩展运用
第16章 桥接模式
16.1 一个传统的继承范例导致子类数量爆炸式增长
16.2 将类与类之间的继承关系改为委托关系
16.3 引入桥接模式
第17章 中介者模式
17.1 中介者的基本概念
17.2 中介者模式范例的引入
17.3 引入中介者模式
第18章 备忘录模式
18.1 一个具体实现范例
18.2 引入备忘录模式
第19章 职责链模式
19.1 一个关于涨薪审批的范例
19.2 引入职责链模式
19.3 单纯与非单纯的职责链模式
第20章 访问者模式
20.1 一个具体范例的逐渐演化
20.2 引入访问者模式
20.3 访问者模式深入理解
第21章 解释器模式
21.1 一个用解释器模式编写的范例
21.2 引入解释器模式
21.3 机器人运动控制范例
第22章 设计模式总结
附录A 类和对象
A.1 静态对象的探讨与全局对象的构造顺序
A.1.1 静态对象的探讨
A.1.2 全局对象的构造顺序问题
A.2 拷贝构造函数和拷贝赋值运算符
A.2.1 拷贝构造函数和拷贝赋值运算符的书写
A.2.2 对象自我赋值产生的问题
A.2.3 继承关系下拷贝构造函数和拷贝赋值运算符的书写
A.2.4 拷贝构造函数和拷贝赋值运算符中重复代码的处理
A.3 类的public继承(is-a关系)及代码编写规则
A.3.1 子类遮蔽父类的普通成员函数
A.3.2 父类的纯虚函数接口
A.3.3 父类的虚函数接口
A.3.4 为纯虚函数指定实现体
A.3.5 类的public继承(is-a关系)综合范例
A.3.6 public继承关系下的代码编写规则
A.4 类与类之间的组合关系与委托关系
A.4.1 组合关系
A.4.2
作者简介
王健伟,男,1976年9月生,网名狂想(KuangXiang),1995年毕业于哈尔滨工程大学计算机及应用专业,拥有20多年软件开发经验,参与开发过数十个实际项目,涉及网络通信、网络安全、网络游戏等领域,具备极其深厚的软件开发实战经验。曾参与创办深圳知名网络安全公司安络科技有限公司,是中国首套网络安全在线扫描评估系统项目负责人、全球同服独立游戏《冒险之路》制作人。
-
MySQL数据库案例教程
¥34.9¥49.8 -
计算机网络技术
¥23.1¥33.0 -
Java语言程序设计
¥66.5¥95.0 -
剪映:短视频剪辑从入门到精通
¥27.7¥42.0 -
Photoshop 2022平面设计实战教程(全彩微课版)
¥59.9¥79.8 -
Hadoop大数据技术项目化教程
¥48.2¥68.8 -
C语言程序设计
¥31.9¥45.5 -
KUKA(库卡)工业机器人编程与操作
¥59.3¥79.0 -
用户增长方法论:找到产品长盛不衰的增长曲线
¥60.5¥89.0 -
编译原理(第4版)/刘铭
¥31.5¥45.0 -
白话区块链
¥25.4¥59.0 -
Photoshop平面设计实用教程
¥15.1¥39.8 -
硅谷之火-人与计算机的未来
¥12.7¥39.8 -
中文版PHOTOSHOP 2024完全自学教程
¥83.9¥119.8 -
剪映:剪辑+调色+字幕+配音+特效从新手到高手
¥25.9¥49.8 -
运镜师:深入学习脚本设计与分镜拍摄(短视频实战版)
¥66.0¥88.0 -
智能控制与强化学习先进值迭代评判设计
¥109.0¥139.8 -
实战数据可视化Excel篇
¥27.4¥49.8 -
人工智能应用基础(第2版)
¥32.7¥46.0 -
短视频编辑与制作
¥30.5¥43.0