读Patterns of enterprise application architecture(1)

原创 2005年05月24日 18:36:00
的确是本好书,就是有点老了。2年半前出版的。
感觉没什么新东西,尤其是O/R mapping部分,现在已经有现成的Hibernate之类的工具了。
但是还是很值得收藏的一本书,它把一些我们其实在不知不觉中都用过的东西都总结了,并起了适当的名字,便于记忆和交流。据说作者Martin Fowler最善于此道,呵呵。
从书中得到的大概思想是这样:
一共三种设计模式,Transaction Scprit, Domain Model, Table Module。
TS最好不用,不仅不是面向对象,而且很容易产生重复代码;
TM需要开发环境提供RecordSet型对象来支持,在内建了TM支持的.net技术中可以使用,但是java环境比较困难;
DM 是最佳选择。如果model和table能形成严格对应的话,可以把数据访问代码写到model中,商业逻辑也写在model中,这叫Active Record模式;否则的话,则需要用data mapper模式,类似于DAO,data mapper类里负责CRUD处理,商务逻辑还在model里。关于如何实施DM作者没有进一步说明(因为本书的目的只是介绍模式),因此我又买了一本 书,是Martin Fowler极力推荐的,Eric Evan写的Domain-Driven Design。
当然PEAA这本书里还有很多其他的东西,比如说并发处理,Session处理,分布式处理等方面的模式。

加一段废话感想:
书中说,一旦程序员们学会了使用DM,他们便爱不释手。
我想这是因为DM(也就是OO)抓住了事物的真髓,从一开始简单的model开始,不断精化,却不会象TS那样变得臃肿混乱无序,反而会愈趋愈精,model变得抽象,精练,简洁,愈来愈接近事物的本质了。
所以说,DM(OO)是符合道家思想的。

读Martin Fowler's 《Patterns of Enterprise Application Architecture》有感

作为一本技术指导书,显然这本书有些outdated了,但想想现在的一些框架,架构正是基于这本书的思想构建的,还是不免对作者当时的Vision感到钦佩。出于对这些思想本源的追索,以及对历史的追溯。还是很...

学习《企业应用架构模式》(Patterns of Enterprise Application Architecture)C01 分层

第一章 分层 参考 网络通讯的7层结构; 基于C/S系统结构中,分层概念更加明显; 三个基本层次: 表现层:提供服务,显示信息(处理用户请求(鼠标键盘),HTTP请求,命令行调用,批处理API);...

ABP-Enterprise Web Application Architecture

ABP 是一个融合了ASP.NET技术体系的企业web应用开发框架,主要有ASP.NET MVC / Web API 2.0 / EF 等等,并且支持IOC/多语言等特性。 ABP的官网网址:http...

Comparison of Architecture presentation patterns MVP(SC),MVP(PV),PM,MVVM and MVC

本文转载自 http://www.codeproject.com/Articles/66585/Comparison-of-Architecture-presentation-patterns-M ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:读Patterns of enterprise application architecture(1)
举报原因:
原因补充:

(最多只允许输入30个字)