软件设计模式与体系结构
作者: 孙玉山,刘旭东
出版时间:2013-05-16
出版社:高等教育出版社
- 高等教育出版社
- 9787040372021
- 1版
- 96164
- 44259825-6
- 平装
- 异16开
- 2013-05-16
- 600
- 313
- 工学
- 软件工程
- TP311.5
- 计算机及相关专业
- 本科 研究生及以上
本书针对软件体系结构理论较为抽象,而在校学生往往无实践经验的特点,将高层的软件体系结构和低层的软件设计模式结合起来,并通过精心设计的实例,引导学生掌握本课程的相关内容。
全书分为上、下两篇,共7章。上篇为软件设计模式,包括第1~4章,分别为软件设计模式概述、创建型软件设计模式、结构型软件设计模式和行为型软件设计模式;下篇为软件体系结构,包括第5~7章,分别为软件体系结构概述、经典软件体系结构和基于网络的软件体系结构。为便于读者理解与掌握相应的理论知识,书中给出了大量的设计实例和趣味性较强的课下设计-编程作业,每个实例和作业都试图解释使用相应设计模式或者体系结构进行设计的要点所在,且均由Java语言实现,完整代码见书后所附光盘。
本书可作为普通高等学校计算机科学与技术、软件工程等专业本科高年级或研究生相关课程教材,也可供软件工程师参考使用。
前辅文
上篇 软件设计模式
第1 章 软件设计模式概述
1. 1 软件设计模式的由来
1. 2 软件设计模式的概念及意义
1. 3 软件设计模式与软件体系结构
1. 4 软件设计模式的分类
第2 章 创建型软件设计模式
2. 1 工厂方法与抽象工厂模式
2. 1. 1 工厂方法应用场景
2. 1. 2 简单工厂方法模式
2. 1. 3 工厂方法模式
2. 1. 4 抽象工厂模式
2. 1. 5 关于工厂方法模式与抽象工厂模式的讨论
练习题与课下设计- 编程作业1
2. 2 生成器模式
2. 2. 1 生成器模式应用场景
2. 2. 2 生成器模式的概念与机制
2. 2. 3 生成器模式应用实例
2. 2. 4 工厂方法模式、抽象工厂模式与生成器模式的比较
课下设计- 编程作业2
2. 3 单例模式
2. 3. 1 单例模式的概念与机制
2. 3. 2 单例模式应用实例
2. 3. 3 多线程编程中的单例模式
练习题与课下设计- 编程作业3
本章总结
第3 章 结构型软件设计模式
3. 1 组合模式
3. 1. 1 组合模式的应用场景
3. 1. 2 组合模式的概念与机制
3. 1. 3 组合模式应用实例
3. 1. 4 关于组合模式的讨论
练习题与课下设计- 编程作业4
3. 2 适配器模式
3. 2. 1 现实生活中的适配器
3. 2. 2 适配器模式的概念与机制
3. 2. 3 关于适配器模式的讨论
练习题与课下设计- 编程作业5
3. 3 外观模式
3. 3. 1 现实生活中的外观
3. 3. 2 外观模式的概念
3. 3. 3 使用外观模式进行设计的实例
3. 3. 4 关于外观模式的讨论
课下设计- 编程作业6
3. 4 桥接模式
3. 4. 1 桥接模式应用场景
3. 4. 2 桥接模式的概念与机制
3. 4. 3 桥接模式应用实例
3. 4. 4 关于桥接模式的讨论
练习题与课下设计- 编程作业7
本章总结
第4 章 行为型软件设计模式
4. 1 迭代器模式
4. 1. 1 迭代器模式应用场景
4. 1. 2 迭代器模式的概念与机制
4. 1. 3 迭代器模式应用实例
练习题与课下设计- 编程作业8
4. 2 访问者模式
4. 2. 1 访问者模式应用场景
4. 2. 2 访问者模式的概念与机制
4. 2. 3 访问者模式应用实例
4. 2. 4 关于被访问者与访问者类之间的关联关系
4. 2. 5 关于访问者模式中的ObjectStructure 类的Java实现
练习题与课下设计- 编程作业9
4. 3 命令模式
4. 3. 1 命令模式应用场景
4. 3. 2 命令模式的概念与机制
4. 3. 3 命令模式应用实例
4. 3. 4 关于命令模式的讨论
练习题与课下设计-编程作业10
4. 4 中介者模式
4. 4. 1 中介者模式应用场景
4. 4. 2 中介者模式的概念与机制
4. 4. 3 中介者模式应用实例
4. 4. 4 中介者模式的实现细节
练习题与课下设计-编程作业11
4. 5 策略模式
4. 5. 1 策略模式应用场景
4. 5. 2 策略模式概念与机制
4. 5. 3 策略模式应用实例
4. 5. 4 关于策略模式的讨论
练习题与课下设计-编程作业12
4. 6 状态模式
4. 6. 1 状态模式应用场景
4. 6. 2 状态模式的概念与机制
4. 6. 3 状态模式应用实例
4. 6. 4 关于状态模式的讨论
练习题与课下设计-编程作业13
本章总结
下篇 软件体系结构
第5 章 软件体系结构概述
5. 1 软件体系结构的概念
5. 2 软件体系结构的意义
5. 3 软件体系结构与软件质量属性
5. 4 软件体系结构的风格
第6 章 经典软件体系结构
6. 1 调用- 返回风格软件体系结构
6. 1. 1 非结构化编程简介
6. 1. 2 调用- 返回风格软件体系结构的概念
6. 1. 3 主程序- 子程序软件体系结构
6. 1. 4 面向对象软件体系结构
6. 1. 5 主程序- 子程序与面向对象体系结构的案例分析
6. 1. 6 主程序- 子程序与面向对象体系结构的比较
练习题与课下设计-编程作业14
6. 2 数据流风格软件体系结构
6. 2. 1 数据流系统与数据流风格软件体系结构概述
6. 2. 2 顺序批处理软件体系结构
6. 2. 3 管道- 过滤器软件体系结构
6. 2. 4 顺序批处理系统与管道-过滤器软件体系结构的比较
练习题与课下设计-编程作业15
6. 3 事件系统软件体系结构
6. 3. 1 事件系统软件体系结构的概念
6. 3. 2 事件处理策略
6. 3. 3 观察者模式应用场景
6. 3. 4 观察者模式的概念与机制
6. 3. 5 观察者模式应用实例
练习题与课下设计-编程作业16
6. 4 层次软件体系结构
6. 4. 1 层次软件体系结构的概念
6. 4. 2 一种典型的层次软件体系结构
6. 4. 3 层次软件体系结构设计实例
练习题与课下设计-编程作业17
6. 5 MVC 软件体系结构
6. 5. 1 MVC 软件体系结构应用场景
6. 5. 2 MVC 软件体系结构的概念与机制
6. 5. 3 MVC 软件体系结构应用实例
6. 5. 4 关于MVC 软件体系结构的讨论
练习题与课下设计-编程作业18
本章总结
第7 章 基于网络的软件体系结构
7. 1 客户端- 服务器软件体系结构
7. 1. 1 一层客户端- 服务器软件体系结构
7. 1. 2 文件共享软件体系结构
7. 1. 3 两层客户端- 服务器软件体系结构
7. 1. 4 三层客户端- 服务器软件体系结构
7. 1. 5 Java EE 软件体系结构简介
7. 1. 6 三层层次体系结构与三层客户端- 服务器软件体系结构的区别
练习题19
7. 2 P2P 软件体系结构
7. 2. 1 P2P 软件体系结构的由来
7. 2. 2 P2P 软件体系结构概述
7. 2. 3 集中目录式P2P——第一代P2P 软件体系结构
7. 2. 4 纯P2P———第二代P2P软件体系结构
7. 2. 5 非结构化的层次纯P2P——第三代P2P 软件体系结构
7. 2. 6 JXTA———P2P 协议
练习题20
7. 3 网格计算软件体系结构
7. 3. 1 网格计算的概念
7. 3. 2 网格计算与其他计算的比较
7. 3. 3 网格计算标准OGSI 与开发工具
7. 3. 4 网格计算应用领域与世界上著名的网格计算项目
练习题21
7. 4 SOA 软件体系结构与Web Service
7. 4. 1 电子商务中B2B 模型简介
7. 4. 2 SOA 软件体系结构的概念
7. 4. 3 Web Services
练习题22
7. 5 云计算软件体系结构
7. 5. 1 云计算的概念及产生背景
7. 5. 2 云计算软件体系结构
7. 5. 3 云计算关键技术
7. 5. 4 典型云计算平台
7. 5. 5 云计算体系结构与网格计算体系结构的比较
练习题23
本章总结
参考文献