出版时间:2013-11 出版社:人民邮电出版社 作者:[美] Douglas Schmidt,[德] Michael Stal,[德] Hans Rohnert,[德] Frank Buschmann 译者:朱而刚,袁国忠
Tag标签:无
内容概要
中间件是Web服务、分布式对象、协同应用程序、电子商务系统以及其他重要平台的基础。开发并发与联网中间件和应用程序过程中面临的关键问题有服务访问与配置、时间处理、同步和并发。本书重点介绍与这些问题领域对应的16个模式和一个成例。同时辅以大量模式示例和已知应用,帮助读者理论联系实际。本书四位作者均为国际公认的软件开发专家,在模式、面向对象架构、面向对象的分布式系统、设计模式等领域具有丰富的实战经验。四位作者强强联手,撰写了各自擅长的模式部分,旨在为读者讲解常见的设计问题、驱动因素、成功的解决方案以及使用效果。
本书面向专业的软件开发人员,帮助他们以全新的视角进行软件架构设计。
作者简介
Douglas Schmidt
国际公认的软件开发专家,尤其在设计模式、面向对象框架、实时中间件、建模工具和开源软件开发等方面享有盛誉,美国范德比尔特大学(Vanderbilt University)计算机科学教授。他的研究领域包括模式和模式语言、优化原理,对于支持服务质量的组件中间件相关技术的实证分析,以及支持分布式实时嵌入式系统的模型驱动的工程工具。
Michael Stal
德国慕尼黑西门子技术公司资深软件工程师,在编译器和计算机图形软件开发方面经验丰富。自1992年开始,Michael一直致力于使用Sockets、CORBA、COM和Java开发并发和面向对象的分布式系统。
Hans Rohnert
德国慕尼黑西门子技术公司通信设备业务部门高级软件工程师。主要研究方向是分析有发展前景的软件技术,并将它们应用到新产品中(例如下一代移动手机)。Hans的主要兴趣是软件架构和设计模式。
Frank Buschmann
德国慕尼黑西门子技术公司首席工程师,Wiley软件设计模式系列图书主编。他的研究领域包括对象技术、软件架构、产品线、模型驱动软件开发和模式。曾是ANSI C++标准化委员会X3J16的成员,于1996年发起了首届EuroPLoP会议。
书籍目录
目 录
第1章 并发与联网对象 1
1.1 驱动因素 1
1.2 并发与联网软件面临的挑战 4
1.2.1 挑战1:服务访问与配置 6
1.2.2 挑战2:事件处理 9
1.2.3 挑战3:并发 11
1.2.4 挑战4:同步 13
1.2.5 联网软件的其他挑战 14
1.3 案例研究:设计一个并发的Web服务器程序 16
1.3.1 JAWS框架概况 17
1.3.2 使用模式解决JAWS中常见的设计挑战 18
1.3.3 封装底层的操作系统API 19
1.3.4 将事件分离与连接管理同协议处理分离 20
1.3.5 通过多线程按比例提升服务器程序的性能 21
1.3.6 实现同步请求队列 23
1.3.7 最小化服务器程序的线程开销 24
1.3.8 有效利用异步I/O 25
1.3.9 增强服务器程序的可配置性 27
1.3.10 其他用于实现JAWS的模式 28
1.4 小结 29
第2章 服务访问和配置模式 31
2.1 Wrapper Facade 32
2.2 Component Configurator 51
2.3 Interceptor 73
2.4 Extension Interface 95
第3章 事件处理模式 119
3.1 Reactor 120
3.2 Proactor 146
3.3 Asynchronous Completion Token 178
3.4 Acceptor-Connector 195
第4章 同步模式 223
4.1 Scoped Locking 224
4.2 Strategized Locking 230
4.3 Thread-Safe Interface 238
4.4 Double-Checked Locking Optimization 244
第5章 并发模式 253
5.1 Active Object模式 254
5.2 Monitor Object模式 275
5.3 Half-Sync/Half-Async模式 292
5.4 Leader/Followers模式 306
5.5 Thread-Specific Storage模式 324
第6章 模式的综合运用 345
6.1 从单个模式到模式语言 345
6.1.1 没有模式是一座孤岛 345
6.1.2 模式语言的形成 347
6.2 面向中间件和应用程序的模式语言 348
6.2.1 模式语言的细节 348
6.2.2 模式语言之我见 355
6.3 并发与联网之余 356
6.3.1 图形用户接口 356
6.3.2 组件 357
6.3.3 通用编程 357
6.4 模式语言与模式系统 358
第7章 模式的过去、现在及未来 361
7.1 过去四年中模式的发展 361
7.1.1 模式 361
7.1.2 模式系统和模式语言 362
7.1.3 方法和工具 363
7.1.4 算法和数据结构 363
7.1.5 模式的形式化 363
7.2 模式的发展现状 364
7.3 模式的未来发展趋势 365
7.3.1 模式 365
7.3.2 模式语言 367
7.3.3 经验报告、方法与工具 368
7.3.4 模式文档 368
7.3.5 模式与模式语言的形式化 369
7.3.6 软件开发流程与组织 369
7.3.7 教育 369
7.3.8 我们的长期愿景 370
7.4 关于预测未来的最后一点想法 370
第8章 结束语 372
8.1 术语表 373
8.2 符号 385
8.2.1 类-职责-协作者卡片 385
8.2.2 UML类图 385
8.2.3 UML时序图 386
8.2.4 UML 状态图 388
参考文献 390
索引 414
图书封面
图书标签Tags
无
评论、评分、阅读与下载