标题：面向模式的软件架构：分布式计算的模式语言
基本信息
出版社: 人民邮电出版社; 第1版 (2010年6月1日)
外文书名: Pattern-Oriented Software Architecture
丛书名: 图灵程序设计丛书
平装: 348页
正文语种: 简体中文
开本: 16
ISBN: 9787115227737, 711522773X
条形码: 9787115227733, 9787115227737
商品尺寸: 23.2 x 18.4 x 2 cm
商品重量: 621 g
品牌: 人民邮电出版社
ASIN: B003RHHBCI
内容简介
《面向模式的软件架构:分布式计算的模式语言(卷4)》关注分布式计算系统软件的设计和实现。书中首先介绍理解《面向模式的软件架构:分布式计算的模式语言(卷4)》内容所需的核心的模式概念，分布式计算的好处和挑战；然后描述如何使用分布式计算模式语言，设计真实世界中仓库管理流程控制系统；最后重点讲述分布式计算模式语言，该语言陈述了创建分布式系统相关的技术主题。
《面向模式的软件架构:分布式计算的模式语言(卷4)》适用于软件架构师和开发人员。
作者简介
作者：（德国）布施曼（Frank Buschmann） （英国）亨尼（Kevlin Henney） （美国）施密特（Douglas C.Schmidt）译者：肖鹏 陈立
布 施曼（Frank Buschmann），是德国慕尼黑西门子公司总部技术部门的高级工程师。他的研究兴趣包括对象技术、软件体系结构、框架和模式。他在这些领域发表了很多文章，这些文章可以在他与人合著的POSA第1卷中找到。Frank于1992～1996年期间是ANSI C++标准化委员会X3J16的成员。Frank发起并组织了在欧洲举办的第一次关于模式的会议——EuroOLop 1996，他也是PLoPD丛书第三卷的主编之一。Frank参与了一些大规模工业软件项目的设计与实现，这些项目包括商务信息、工业自动化以及电信系统。
工作之余，Frank的生活丰富多彩。他喜欢陪着妻子Martina和女儿Anna享受家庭的快乐；他喜欢骑着马儿Eddi外出遛弯，或者独 自跑到慕尼黑啤酒花园打发时间；他喜欢在观看最爱的多特蒙德足球队的比赛时尽洒激情，也偶尔在慕尼黑歌剧院里的演出中尽情陶醉；临睡前他还喜欢来杯珍藏的苏格兰纯麦威士忌。
亨尼（Kevlin Henney），住在英国布里斯托尔，是一名独立顾问。他主要从事自己感兴趣的领域的教授、辅导和实践，这些领域包括编程语言和技术、软件架构、模式和敏捷开发。他的客户既有全球化的公司，也有刚起步的小公司，所涉及的领域包括系统软件、电信、嵌入式系统、中间件开发、业务信息和金融。
Kevlin 经常在各种软件会议上应邀演讲，同时也参与了多个会议的组织工作，包括EuroPLoP。他通过英国标准学会（BSI）和ISO参与到c++的标准中来，同时也参与了其他语言的标准化工作。Kevlin也因其写作受人关注，经常发表会议论文，主持各种出版物上定期的（和不定期的）专栏，比如Cl++Report、Cl/c++己lsers Journal.Java ReporT、JavasPektrum、Application DevelopmentAdvisor、The Register、EXE和Overload。
Kevlin的业余时间则是与妻子Carolyn还有两个孩子Stefan和Yannick度过的。他跟孩子摆摆积木，给孩子们修修玩具，看书，有时也啜几口啤酒或者来一杯葡萄酒。
施 密特（Doug Schmidt），是美国田纳西州纳什维尔市范德比尔特大学计算机科学教授，计算机科学与工程计划副主席。他的研究领域包括模式和模式语言、优化原理，还包括对于支持服务质量（QoS）的组件中间件相关技术的实证分析（empiricalanalysis）和支持分布式实时嵌入式系统的模型驱动的工程工具。
Doug是国际公认的软件开发方面的专家，尤其是模式、面向对象框架、实时 中间件、建模工具和开源软件开发等方面。他已经在各种顶级技术杂志和会议上发表了300多篇论文；他与人合著了模式方面的著作[POSA2]和有关C++ 网络编程的[SH02][SH03]；同时他还与人合编过数本畅销的书，比如模式方面有[PLoPDl]，框架方面有[FJS99a][FJS99b]。 除了学术研究，Doug还领导了ACE、TAO、CIAO和CoSMIC的开发，这些广泛应用的开源的中间件框架和模型驱动的工程工具包含了一整套丰富的 可重用的组件，这些组件的实现大量使用了本书中介绍的模式。
在他闲暇之隙，Doug总是跟妻子Lori和儿子Bronson待在一起，他们一起练练举重、弹弹吉它、讨论世界历史和政治，或者开着他们的雪佛兰Corvette跑车四处兜风。
译者简介：
肖 鹏，ThoughtWorks高级咨询师。敏捷过程教练。面向对象分析和面向对象设计专家。拥有6年以上软件开发实践经验，多次担任国内大中型企业敏捷流 程改进、面向对象分析和面向对象设计咨询和培训。他长期关注设计模式、架构模式、敏捷软件开发等领域。并致力于推广软件开发最佳实践。他曾参与翻译《ViSual Studio 2005技术大全》，主持翻译《面向模式的软件架构》第四卷和第五卷。
目录
第一部分　概念
第1章　模式与模式语言2 
1.1　模式2 
1.2　模式内幕3 
1.2.1　问题的环境 3 
1.2.2　驱动因素：所有模式的核心4 
1.2.3　解决方案与结果4 
1.2.4　模式命名4 
1.2.5　模式表现形式概述5 
1.3　模式的关系5 
1.3.1　模式的互补5 
1.3.2　模式的组合6 
1.3.3　模式故事6 
1.3.4　模式序列7 
1.4　模式语言7 
1.4.1　从模式序列到模式语言7 
1.4.2　展现和使用模式语言7 
1.5　模式的连接8 
第2章　分布式系统9 
2.1　分布式的优点9 
2.2　分布式的挑战11 
2.3　用以支持分布式的技术12 
2.3.1　分布式对象计算中间件13 
2.3.2　组件中间件14 
2.3.3　发布/订阅中间件和面向消息的中间件15 
2.3.4　面向服务架构和Web服务16 
2.4　中间件技术的局限性17 
第3章　模式语言18 
3.1　意图、范畴和对象18 
3.2　起源18 
3.3　结构和内容19 
3.4　模式的表现24 
3.5　实际应用26 
第二部分　模式故事
第4章　仓库管理流程控制33 
4.1　系统范畴33 
4.2　仓库管理流程控制34 
第5章　基线架构37 
5.1　架构环境37 
5.2　划分大泥球38 
5.3　层次分解38 
5.4　访问领域对象功能40 
5.5　网络桥接41 
5.6　分离用户界面43 
5.7　功能分布45 
5.8　支持并发的领域对象访问47 
5.9　获得可扩展的并发性48 
5.10　将面向对象与关系型数据库连接起来49 
5.11　领域对象的运行时配置50 
5.12　基线架构总结51 
第6章　通信中间件54 
6.1　分布式系统的中间件架构54 
6.2　对中间件的内部设计进行结构化57 
6.3　封装底层系统机制58 
6.4　分离ORB核心事件59 
6.5　ORB连接管理61 
6.6　提高ORB的可伸缩性63 
6.7　实现同步请求队列65 
6.8　可互换的内部ORB机制66 
6.9　管理ORB策略68 
6.10　ORB动态配置69 
6.11　通信中间件总结71 
第7章　仓库拓扑74 
7.1　仓库拓扑基线74 
7.2　表现层次化的存储结构74 
7.3　存储结构导航77 
7.4　存储属性建模78 
7.5　不同的存储单元行为79 
7.6　实现全局功能81 
7.7　遍历仓库拓扑81 
7.8　支持控制流扩展83 
7.9　连接数据库84 
7.10　维护内存中的存储单元数据85 
7.11　配置仓库拓扑86 
7.12　细述显式接口88 
7.13　仓库拓扑总结89 
第8章　模式故事背后的故事91 
第三部分　模式语言
第9章　从混沌到结构97 
9.1　Domain Model** 106 
9.2　Layers** 108 
9.3　Model-View-Controller** 109 
9.4　Presentation-Abstraction-Control 111 
9.5　Microkernel** 113 
9.6　Reflection* 114 
9.7　Pipes and Filters** 116 
9.8　Shared Repository** 117 
9.9　Blackboard 119 
9.10　Domain Object** 121 
第10章　分布式基础设施123 
10.1　Messaging** 129 
10.2　Message Channel** 130 
10.3　Message Endpoint** 132 
10.4　Message Translator** 133 
10.5　Message Router** 134 
10.6　Publisher-Subscriber** 135 
10.7　Broker** 137 
10.8　Client Proxy** 139 
10.9　Requestor** 140 
10.10　Invoker** 142 
10.11　Client Request Handler** 143 
10.12　Server Request Handler** 144 
第11章　事件分离和分发147 
11.1　Reactor** 150 
11.2　Proactor* 152 
11.3　Acceptor-Connector** 154 
11.4　Asynchronous Completion Token** 155 
第12章　接口划分157 
12.1　Explicit Interface** 163 
12.2　Extension Interface** 165 
12.3　Introspective Interface** 166 
12.4　Dynamic Invocation Interface* 167 
12.5　Proxy** 169 
12.6　Business Delegate** 170 
12.7　Facade** 171 
12.8　Combined Method** 172 
12.9　Iterator** 173 
12.10　Enumeration Methond** 174 
12.11　Batch Method** 175 
第13章　组件划分177 
13.1　Encapsulated Implementation** 181 
13.2　Whole-Part** 183 
13.3　Composite** 185 
13.4　Master-Slave** 186 
13.5　Half-Object plus Protocol** 188 
13.6　Replicated Component Group** 189 
第14章　应用控制191 
14.1　Page Controller** 196 
14.2　Front Controller** 197 
14.3　Application Controller** 198 
14.4　Command Processor** 199 
14.5　Template View** 200 
14.6　Transform View** 201 
14.7　Firewall Proxy** 202 
14.8　Authorization** 204 
第15章　并发206 
15.1　Half-Sync/Half-Async** 209 
15.2　Leader/Followers** 211 
15.3　Active Object** 212 
15.4　Monitor Object** 214 
第16章　同步216 
16.1　Guarded Suspension** 221 
16.2　Future** 223 
16.3　Thread-Safe Interface* 224 
16.4　Double-Checked Locking 225 
16.5　Strategized Locking** 226 
16.6　Scoped Locking** 227 
16.7　Thread-Specific Storage 228 
16.8　Copied Value** 230 
16.9　Immutable Value** 231 
第17章　对象间的交互233 
17.1　Observer** 237 
17.2　Double Dispatch ** 238 
17.3　Mediator* 239 
17.4　Command** 240 
17.5　Memento** 242 
17.6　Context Object** 243 
17.7　Data Transfer Object** 244 
17.8　Message** 245 
第18章　适配与扩展247 
18.1　Bridge** 255 
18.2　Object Adapter** 256 
18.3　Chain of Responsibility* 257 
18.4　Interpreter 258 
18.5　Interceptor** 260 
18.6　Visitor** 261 
18.7　Decorator 262 
18.8　Execute-Around Object** 264 
18.9　Template Method* 265 
18.10　Strategy** 266 
18.11　Null Object** 267 
18.12　Wrapper Facade** 269 
18.13　Declarative Component Configuration* 270 
第19章　模态行为272 
19.1　Objects for States* 274 
19.2　Methods for States* 275 
19.3　Collections for States* 276 
第20章　资源管理278 
20.1　Container* 288 
20.2　Component Configurator* 289 
20.3　Object Manager** 291 
20.4　Lookup** 292 
20.5　Virtual Proxy** 294 
20.6　Lifecycle Callback** 295 
20.7　Task Coordinator* 296 
20.8　Resource Pool** 298 
20.9　Resource Cache** 299 
20.10　Lazy Acquisition** 300 
20.11　Eager Acquisition** 301 
20.12　Partial Acquisition* 303 
20.13　Activator** 304 
20.14　Evictor** 305 
20.15　Leasing** 306 
20.16　Automated Garbage Collection** 307 
20.17　Counting Handles** 309 
20.18　Abstract Factory** 311 
20.19　Builder* 312 
20.20　Factory Method** 313 
20.21　Disposal Method** 314 
第21章　数据库访问316 
21.1　Database Access Layer** 318 
21.2　Data Mapper** 320 
21.3　Row Data Gateway** 321 
21.4　Table Data Gateway ** 323 
21.5　Active Record 324 
第22章　最后的思考326 
术语表327 
参考书目340