标题：程序设计模式语言·卷5
图书信息
出版社: 清华大学出版社; 第1版 (2009年7月1日)
外文书名: Pattern Languages of Program Design (Vol. 5)
平装: 424页
正文语种: 简体中文
开本: 16
ISBN: 9787302200178
条形码: 9787302200178
尺寸: 22.6 x 18.2 x 2 cm
重量: 581 g
作者简介
作者：(美国) 马诺勒斯库 (Manolescu.D.)  (美国)Markus Voelter (美国)James Noble 译者：陈宗斌
内容简介
《程序设计模式语言·卷5》共分6部分19章。作为提高软件工程、系统设计与开发效率和质量的一种极其有效的方法，模式语言受到越来越多程序设计人员和相关行业的重视。模式收集提炼了许多优秀软件的设计经验，提供给所有软件工程师。本系列丛书（《面向对象软件开发》）已经出版了4卷，《程序设计模式语言·卷5》是该丛书的第5卷，集合了来自程序模式语言会议的一流模式。《程序设计模式语言·卷5》的全部内容都来自各届PLoP，很多人为此作出了卓越的贡献。
目录
第I部分 设计模式
第1章 动态对象模型3
1.1 目的3
1.2 别名3
1.3 动机3
1.4 问题6
1.5 解决方案结构6
1.6 优缺点8
1.6.1 简明性8
1.6.2 灵活性8
1.6.3 最终用户配置9
1.6.4 编程环境9
1.6.5 动态行为10
1.6.6 运行时输入10
1.6.7 可移植性10
1.7 扩展10
1.8 实现11
1.9 示例代码12
1.10 已知应用17
1.11 相关模式18
1.12 致谢19
1.13 参考文献19
第2章 域对象管理器21
2.1 目的21
2.2 别名21
2.3 动机21
2.4 可应用性24
2.5 结构24
2.6 组成25
2.7 协作25
2.8 结果26
2.9 实现27
2.10 示例代码29
2.11 已知应用33
2.12 相关模式33
2.13 致谢35
2.14 参考文献35
第3章 封装上下文37
3.1 受众37
3.2 示例37
3.3 问题40
3.4 限制条件40
3.4.1 可替换性41
3.4.2 封装41
3.4.3 耦合到环境41
3.4.4 避免数据复制42
3.5 解决方案42
3.6 实现43
3.7 最终解决方案44
3.8 变体46
3.9 结果47
3.9.1 可替换性47
3.9.2 封装47
3.9.3 耦合到环境47
3.9.4 避免数据复制47
3.9.5 推理47
3.9.6 实例化48
3.9.7 整洁的代码48
3.9.8 同步点48
3.9.9 测试48
3.9.10 Blob趋势48
3.9.11 隐藏的全局变量49
3.9.12 主要成员49
3.10 已知应用49
3.10.1 Chutney Technologies Apptimizer (C++)49
3.10.2 Reuters Liffe Connect Data Router (C++)49
3.10.3 Jiffy (Parthenon计算) XML数据库服务器(C++)50
3.10.4 Enterprise Java Beans50
3.10.5 Interpreter模式示例50
3.11 相关模式50
3.12 更多示例52
3.13 小结52
3.14 致谢52
3.15 参考文献52
第II部分 并发、网络与实时模式
第4章 用于高效、可预测及可伸缩的调度
组件的模式语言57
4.1 介绍57
4.2 调度组件与模式语言的概述58
4.3 用于调度组件的模式语言61
4.3.1 对单一对象的调度61
4.3.2 对多对象的调度66
4.4 结束语69
4.5 参考文献70
第5章 3T——硬实时系统中用于可靠通信的模式系统73
5.1 简介73
5.1.1 运行示例: 线控制动74
5.1.2 模式概述74
5.2 提前计划的周期性传输76
5.2.1 上下文76
5.2.2 示例76
5.2.3 问题77
5.2.4 解决方案78
5.2.5 实现79
5.2.6 运行时示例分解80
5.2.7 结果81
5.2.8 已知应用82
5.2.9 相关模式83
5.3 时间触发时钟同步83
5.3.1 上下文83
5.3.2 问题 83
5.3.3 示例83
5.3.4 解决方案84
5.3.5 实现84
5.3.6 结果85
5.3.7 已知应用85
5.3.8 相关模式85
5.4 同步帧85
5.4.1 上下文85
5.4.2 问题86
5.4.3 示例86
5.4.4 解决方案86
5.4.5 实现87
5.4.6 分解的运行示例88
5.4.7 结果 88
5.4.8 已知应用89
5.4.9 相关模式89
5.5 总线守护89
5.5.1 上下文89
5.5.2 问题90
5.5.3 示例90
5.5.4 解决方案90
5.5.5 实现91
5.5.6 分解的运行示例92
5.5.7 结果92
5.5.8 已知应用92
5.5.9 相关模式92
5.6 临时应用程序解耦92
5.6.1 上下文92
5.6.2 问题93
5.6.3 示例93
5.6.4 解决方案93
5.6.5 实现94
5.6.6 结果 95
5.6.7 已知应用95
5.6.8 相关模式96
5.7 致谢96
5.8 附录96
5.8.1 术语96
5.8.2 已知应用97
5.9 参考文献99
第6章 实时和资源超载语言101
6.1 介绍101
6.2 语言图103
6.3 语言上下文104
模式1 超载帝国105
模式2 灾难性通知106
模式3 重新评估过载决定108
模式4 如果工作很好，不要修改110
模式5 屏蔽分流工作优先权111
模式6 资源排队113
模式7 过载弹性114
模式8 合理的资源分配115
6.4 以前发布的模式116
6.5 致谢117
6.6 图像来源118
6.6.1 引入模式的图像118
6.6.2 其他图像118
6.7 参考文献118
第III部分 分布式系统
第7章 分散锁定123
7.1 介绍123
7.2 别名123
7.3 示例123
7.4 上下文124
7.5 问题124
7.6 解决方案124
7.7 结构125
7.8 动态125
7.9 实现128
步骤1128
步骤2128
步骤3129
步骤4129
步骤5130
7.10 示例分解130
7.11 变体131
7.12 已知应用131
7.13 结果132
7.14 相关模式132
7.15 致谢133
7.16 参考文献133
第8章 比较模式： 使用专门值简化身份测试135
8.1 简介135
8.2 示例135
8.3 上下文136
8.4 问题136
8.5 解决方案138
8.6 实现139
8.6.1 “正确的”比较语义139
8.6.2 对克隆的比较139
8.6.3 哪些类可相互比较140
8.6.4 给定系统的限制条件141
8.6.5 重用已有的属性141
8.6.6 执行比较操作142
8.6.7 分布式环境中的比较字符142
8.6.8 模糊比较字符143
8.6.9 复合比较字符143
8.6.10 计算比较字符145
8.6.11 协同比较字符145
8.7 结果145
8.8 已知应用146
8.8.1 JPDA146
8.8.2 远程方法请求146
8.8.3 CORBA关系服务147
8.8.4 Enterprise Java Beans147
8.8.5 Ginko147
8.9 相关模式148
8.10 结论148
8.11 致谢148
8.12 参考文献149
第9章 服务发现的模式语言151
9.1 模式152
模式1 询问本地网络152
模式2 覆盖网络153
模式3 侦听广告154
模式4 使用广告主155
模式5 查阅目录156
模式6 目录中的服务注册157
模式7 目录发现服务158
模式8 结合目录与组织159
模式9 动态放置目录160
模式10 从位置中分离标识 160
模式11 客户知道最好的162
模式12 服务完成繁重工作163
9.2 结合模式: 以SLP为例163
9.3 致谢165
9.4 参考文献165
第IV部分 特定于域的模式
第10章 MoRaR:  移动与无线资源管理的模式语言169
10.1 介绍169
10.2 移动无线系统： 体系结构概念170
10.3 MoRaR 模式语言172
10.4 移动管理功能的相关模式175
10.4.1 临时标识175
10.4.2 安全数据库 177
10.4.3 加密178
10.4.4 认证180
10.4.5 分页 182
10.4.6 主数据库与访问数据库183
10.4.7 位置注册 185
10.5 无线资源管理模式186
10.5.1 切换决定187
10.5.2 锚实体188
10.5.3 系统间切换执行190
10.5.4 切换失败措施191
10.5.5 释放资源192
10.6 结论192
10.7 致谢193
10.8 参考文献194
10.9 附录196
第11章 Web上的内容转换与生成： 模式语言199
11.1 介绍199
11.1.1 目标受众200
11.1.2 表单上的注释200
11.2 模式语言回顾201
11.3 Web上转换和生成内容的模式203
11.3.1 通用内容格式203
11.3.2 发布者与收集者206
11.3.3 内容转换器209
11.3.4 内容创建器212
11.3.5 内容格式模板214
11.3.6 片段216
11.3.7 内容缓存220
11.4 Java中的实现示例222
11.5 已知应用与相关工作225
11.6 结论227
11.7 致谢228
11.8 参考文献229
第V部分 体系结构模式
第12章 插件模式233
12.1 组件的插件特色234
12.2 示例234
12.3 已知应用235
12.4 路线图235
12.5 插件236
12.5.1 上下文236
12.5.2 问题236
12.5.3 限制条件237
12.5.4 解决方案237
12.5.5 术语237
12.5.6 结果237
12.5.7 实现238
12.5.8 组织问题238
12.5.9 已知应用238
12.5.10 示例239
12.5.11 相关模式239
12.6 插件协议240
12.6.1 上下文240
12.6.2 问题240
12.6.3 限制条件240
12.6.4 解决方案240
12.6.5 结果241
12.6.6 实现242
12.6.7 变量242
12.6.8 示例242
12.6.9 已知应用243
12.6.10 相关模式243
12.7 提供框架的应用程序244
12.7.1 别名244
12.7.2 上下文244
12.7.3 问题244
12.7.4 限制条件244
12.7.5 解决方案244
12.7.6 结果244
12.7.7 实现245
12.7.8 变量245
12.7.9 示例245
12.7.10 已知应用245
12.7.11 相关模式246
12.8 插件注册246
12.8.1 上下文246
12.8.2 问题246
12.8.3 限制条件246
12.8.4 解决方案247
12.8.5 结果247
12.8.6 实现247
12.8.7 变量247
12.8.8 示例248
12.8.9 已知应用248
12.8.10 相关模式248
12.9 插件生命周期248
12.9.1 上下文248
12.9.2 问题248
12.9.3 限制条件248
12.9.4 解决方案249
12.9.5 结果249
12.9.6 实现249
12.9.7 变量249
12.9.8 示例250
12.9.9 已知应用250
12.9.10 相关模式250
12.10 插件包251
12.10.1 上下文251
12.10.2 问题251
12.10.3 限制条件251
12.10.4 解决方案251
12.10.5 结果252
12.10.6 实现252
12.10.7 示例252
12.10.8 已知应用252
12.10.9 相关模式253
12.11 协作插件253
12.11.1 别名253
12.11.2 上下文253
12.11.3 问题253
12.11.4 限制条件253
12.11.5 解决方案253
12.11.6 结果254
12.11.7 实现254
12.11.8 示例254
12.11.9 已知应用254
12.11.10 相关模式254
12.12 基于插件的产品255
12.12.1 上下文255
12.12.2 问题255
12.12.3 限制条件255
12.12.4 解决方案255
12.12.5 结果255
12.12.6 实现256
12.12.7 组织问题256
12.12.8 示例257
12.12.9 已知应用257
12.12.10 相关模式257
12.13 致谢257
12.14 参考文献257
第13章 网格体系结构模式： 影响分布式处理能力259
13.1 目的259
13.2 示例259
13.3 上下文260
13.4 问题260
13.5 解决方案261
13.6 结构261
13.7 动态过程263
13.8 实现264
13.9 已知应用267
13.10 结果268
13.11 相关模式269
13.12 致谢270
13.13 参考文献270
第14章 组件和语言集成的模式273
14.1 介绍273
14.1.1 软件集成273
14.1.2 模式语言轮廓274
14.2 组件和语言集成的模式276
14.2.1 命令语言276
14.2.2 组件打包器281
14.2.3 对象系统层285
14.2.4 自动类型转换器288
14.2.5 分离对象291
14.3 已知应用与技术投射294
14.3.1 文件档案系统再设计294
14.3.2 MHP产品线的硬件选择295
14.3.3 TclCL和XOTcl/SWIG297
14.3.4 用SPLIT OBJECT配置外观298
14.3.5 语义查找服务300
14.3.6 Apache Axis303
14.4 结论303
14.5 致谢304
14.6 参考文献304
第15章 成功框架开发的模式307
15.1 介绍307
15.2 项目背景307
15.2.1 数据访问层框架308
15.2.2 Web门户网站框架308
15.3 路线图309
模式1 重用的具体证据309
模式2 简明的优点312
模式3 技能小组314
模式4 试点应用程序315
模式5 小对象317
模式6 基于试点的测试319
模式7 框架用户参与321
模式8 多变更请求323
15.4 结论324
15.5 致谢325
15.6 参考文献325
第VI部分 元 模 式
第16章 高级模式编写329
16.1 简介329
16.2 现有的工作330
16.3  "What”解决方案332
16.4  "How”过程333
16.5  "Why”问题335
16.6 Dead Weasels336
16.7 解决方案中的限制条件提示337
16.8 一致“Who" 339
16.9 指向细节的指针340
16.10 致谢342
16.11 参考文献342
第17章 语言设计者的模式语言343
17.1 介绍343
17.1.1 LDPL基础343
17.1.2 LDPL中应用的示例346
17.2 模式语言347
17.2.1 局部修复349
17.2.2 限制条件的群集353
17.2.3 局部对称356
17.2.4 限制条件的分解362
17.2.5 比例的层次364
17.2.6 交叉连接367
17.2.7 区别370
17.2.8 聚合372
17.2.9 共同点374
17.2.10 空隙376
17.3 结论378
17.4 参考文献378
第18章 审阅语言383
18.1 设置环境383
18.2 三次迭代385
18.3 审阅者了解被审阅者387
18.4 半片面包388
18.5 主体情况389
18.6 作者为主390
18.7 匹配问题与解决方案391
18.8 令人信服的解决方案（“啊”效果）392
18.9 限制条件定义问题393
18.10 平衡上下文395
18.11 战争故事396
18.12 形式服从功能397
18.13 小模式398
18.14 结束语399
18.15 致谢399
18.16 参考文献399
第19章 草原式住宅模式401
19.1 在草原上401
19.1.1 眺望所和庇护所402
19.1.2 Hildebrand的本质特征403
19.1.3 Alexanderian的说明403
19.1.4 作者的注解404
19.2 形式服从优势特性405
19.3 眺望所与庇护所407
19.4 锚一样的烟囱408
19.5 悬桁平台410
19.6 带状窗户411
19.7 庇护所一样的壁炉412
19.8 眺望视角413
19.9 隐藏的垂线414
19.10 迂回的路径415
19.11 评价与结论416
19.12 致谢417
19.13 参考文献417
作者介绍419