beats Kindle unlimited boutique BTS game

商品评论

2017年8月22日
我上一本书看的也是Martin Fowler的书,就是著名的《重构》,但是并没有收获到太多东西。但是看完这本书之后我就被Martin Fowler折服了。
如果放到今天,Java EE的这种大环境下,这本书并没有什么了不起的,只能算是马后炮,但是本书发售的时间却远在之前,在那个struts2、hibernate、spring都还没有出现的年代,这就是另一种性质了。
简单来说,就是你可以从这本书上看到很多现在的一些框架、成熟的产品以及企业内项目的各种痕迹,书上把它称为“模式”,那就用“模式”一词吧。
例如在看数据源的模式的时候,(特别是“数据映射器”的内容)我一直有一种强烈的hibernate既视感,以前我总以为hibernate只是为了OOP而OOP的一个持久层框架(而且还因为这种OOP导致性能不高),但是本书慢慢地改变了我的想法,hibernate只是为了应对更大型的需求才这么做的,它并不只是在追求OOP的美。
这本书上除了能看到现在的各种企业应用的模式外,你还可以看到在这些模式的更简单的模式,因为应用的规模不一定会很大,只有达到一定规模的应用才需要更复杂的模式。仍然拿数据源模式的内容举个例子,“数据映射器”应该是最复杂、最全面的一种数据源模式了,hibernate也实现了它,但是,并不是任何项目都需要用到hibernate,只有那些业务逻辑对象和数据库关系表各自都比较复杂,且难以互相转换的时候,才会引入“数据映射器”去解决,那么,在不那么复杂的时候可以用什么模式呢?当然直接单纯的JDBC这种就太简单了,没有任何维护性可言,本书也提供了更简单的模式,例如“表数据入口”、“行数据入口”和“活动记录”。
另外,本书还引申出了另一个对于现在来说也是非常重要的概念,领域驱动设计(书上是叫领域逻辑模式),因为我一开始是做Java Web比较多,所以已经习惯了从数据库设计开始,再到dao层,再到业务逻辑层这样的设计思路,这也导致了我的项目其实都是根据数据库来进行设计的现象。但是领域驱动设计却提供了一种新的思路来使得设计出来得项目更能应对需求的变换,领域驱动设计具体是怎样的说实话看完本书也不一定能明白,我现在也是糊里糊涂的,但重要的是它提出了这样一个概念,我认为作为一本非专门将领域驱动设计的书来说已经足够了,之后的深入应该继续另寻别书。
之所以觉得这本书厉害,是因为它在距今比较久远的年代就“预言”出了现在业界的状况,现在做的比较成熟的产品,其实还是在按着老思想来走而已。从此可见的先见性不得不让我折服。
6 个人发现此评论有用
报告滥用情况 固定链接

产品详细信息

4.3 颗星,最多 5 颗星
4.3,满分5
68 买家评级