读Patterns of enterprise application architecture(1)

的确是本好书,就是有点老了。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)是符合道家思想的。
  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

stlmmfe

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值