我正在考虑购买Martin Fowler的“企业应用程序架构模式”。
从我所看到的,它看起来像一本好书,一本偏向于企业Java的架构书 - 正是我所需要的。
然而,在计算机时代,它已经很老了。 2003年是很久以前的事情,自那时起事情已经发生了很大变化。
所以我想知道是否有人能告诉我:这本书是否仍然相关,值得一读?
答案 0 :(得分:88)
是的,它仍然非常相关且是一种很好的资源。
答案 1 :(得分:27)
这本书,Eric Evans book about Domain-Driven Design,是我今年的书 - 每年;)......
答案 2 :(得分:17)
这非常重要。我经常将其他开发人员引用到该书中的特定模式,作为指向其网站(http://www.martinfowler.com/eaaCatalog/)的链接,例如Data Transfer Object和Service Layer。
后者是我认为我已“发明”的那个,直到我看到福勒已经写过它。
答案 3 :(得分:10)
鉴于这个问题的答案现在已经有三年了,我觉得重申Martin Fowler模式的相关性很重要。
GOF设计模式书于1994年首次出版,其许多模式仍然被认为是相关的。我们可能已经对它们有了更深入的了解并产生了微妙的变体,但它们是任何优秀OO设计的基础。
现代语言越来越多地在幕后实现一些模式,因此理论上的开发人员不必了解它们(例如,通过C#中的yield
语句的Iterator模式)。但是,开发人员更了解他们。
继续阅读马丁的书 - 这绝对是相关的。确实,许多库现在在后台支持这些模式,再次将它们从开发人员中抽象出来,但它们又是企业应用程序软件开发的核心。
无论语言,系统或平台如何,他们都会一次又一次地解决问题。
答案 4 :(得分:6)
我不同意“偏向Java”的说法。模式,就其本质而言,与语言无关。它们被定义为常见问题的解决方案。 Fowler的书的副本在Java和C#中都有例子,所以我看不出“偏见”的位置。它们是最常见的面向对象语言,他正在讨论面向对象的企业问题解决方案。
GoF书中有Smalltalk和C ++的例子。为什么他们对Java和C#如此“偏见”?提示:编写该书时,语言并不存在,但模式与以往一样具有相关性。
答案 5 :(得分:6)
答案 6 :(得分:5)
答案 7 :(得分:5)
非常相关,当然不会被一种语言所束缚。见证即将到来的Rails移动到Merb,在非常真实的意义上是从POEAA(ActiveRecord)中的一种模式转移到另一种模式(DataMapper)。
从ORM策略到会话管理的许多其他概念都是相关的,与语言无关。当我读到福勒的影响力时,我仍然感到很沮丧。他并没有在这里发明所有的概念,但他确实以这种简洁易懂的方式编纂和命名这些想法,以使它们在整个行业中得到普遍的说法。仍然很重要。
答案 8 :(得分:2)
是的,这本书仍然有用。如果您担心其价值并通过同一渠道销售,您可以在亚马逊上取件。