本书是专门为那些缺乏经验的企业应用开发人员编写的。本书的作者,著名的面向对象设计师Martin Fowler发现如果不考虑Smalltalk、CORBA、Java和.NET在技术上的差异的话,相同的基础设计理念是能够用来解决架构方面的常见问题的。在特约专家组的帮助下,Martin将40余种可重现解决方案提炼成为模式。因此,这本不可或缺的解决方案手册适用于任何企业应用平台。
本书实际上是将两本书合二为一了。本书的第一部分是开发企业应用的简短指南,你可以从中了解到本书所涵盖的内容。第二部分是本书的主体,是关于模式的详细讲解。每种模式都介绍了用法和实现信息,同时还附有相应的Java或C#代码范例。整本书中有大量的UML图,用以进一步解释有关概念。
有了本书的帮助,在确定构建企业应用的架构和实施阶段所用模式时,你将具备必要的知识。
本书要点:
·将企业应用分层
·组织业务逻辑的主要方法
·对象和关系数据库之间的映射方法
·使用MVC来组织Web表示
·处理涉及多个事务的数据的并发
·设计分布式对象接口
......(更多)
......(更多)
part 1 the narratives
chapter 1 layering
chapter 2 organizing domain logic
chapter 3 mapping to relational databases
chapter 4 web presentation
chapter 5 concurrency
chapter 6 session state
chapter 7 distribution strategies
chapter 8 putting it all together
part 2 the patterns
chapter 9 domain logic patterns
chapter 10 data source architectural patterns
chapter 11 object-relational behavioral patterns
chapter 12 object-relational structural patterns
chapter 13 object-relational metadata mapping patterns
chapter 14 web presentation patterns
chapter 15 distribution patterns
chapter 16 offline concurrency patterns
chapter 17 session state patterns
chapter 18 base patterns
......(更多)
任何对象可能作为远程对象使用时,经常需要一个粗粒度的接口来减少完成某些任务所需要的调用次数。这不仅会影响你的方法调用,同样还会影响你的对象。现在,一个调用中就会包括访问和更改订单及订单的功能,而不会像以前那样分开调用,这会完全影响你的对象结构。你将不得不放弃小粒度对象和小粒度方法带来的清晰意图和小粒度控制所带来的好处。编程变得困难,并且会使生产率下降。
一个远程外观是一个粗粒度的外观(facade),它建立在大量的细粒度对象之上。所有细粒度对象都没有远程接口,并且远程外观不包括领域逻辑。远程外观所要完成的功能是把粗粒度的方法转换到低层的细粒度对象上。 任何外观都应该是一层薄薄的皮肤并且只负责很小一部分责任。
......(更多)