“本书向读者展示了如何将测试驱动设计、对象-关系映射和领域驱动设计等方法应用于.NET项目……书中介绍的技术在很多开发人员看来是未来软件开发的关键……随着技术越来越强大,复杂度越来越高,理解如何更好地使用技术也变得越来越重要。本书在推进这种理解方面迈出了可贵的一步。”.
——Martin Fowler,ThoughtWorks公司首席科学家,《重构》与《企业应用架构模式》作者
“学习领域驱动设计的最好方法是坐在一位友好、耐心且经验丰富的从业者身边,一步一步地共同研究问题。阅读本书正是这种体验。”
——Eric Evans,领域驱动设计创始人
“在我使用领域驱动设计(DDD)和测试驱动开发(TDD)这两种方法之前,我无法说清楚自己每天都在做些什么,但现在看来,只能勉强说我不过是做了些毫无头绪的工作。领域驱动设计和测试驱动开发这两种方法不断指导我正确应用软件原则,并且让我的项目开花结果,得到健康的、可不断改进的软件。这是一本名副其实的好书,它具体地介绍了敏捷软件开发实践。到目前为止,此书堪称对于.NET软件开发社区的所有成功软件开发实践最具影响力的指南之一。”
Scott Bellware,微软C# MVP,DDD和TDD博客作者
“Jimmy Nilsson帮了读者一个大忙,他展示了如何应用Evans、Fowler等思想领袖教给我们的企业应用设计和开发的基本原则。本书使用一个实例解释和演示了领域驱动设计、企业应用架构模式以及测试驱动开发。Jimmy展现的洞察力和经验使阅读本书充满乐趣,读者不得不承认他们正师从一位资深从业者。正在寻求掌握这些原则的企业开发人员将会发现本书是一本宝贵的指南。”
Jack Greenfield,微软公司Visual Studio 团队 Enterprise Tools架构师
“好的软件架构师都希望能够更上一层楼。除了交付当前系统以外,他们还力图发现更好的软件设计和构建方式。本书就像是一部精彩纷呈的旅行见闻讲座,Jimmy在书中记录了他在各种模式、实践和技术道路上的旅程,并解释了他对于企业系统的思考是如何演变的。如果你正沿着相同的路线前进,那么本书将是一个很好的伙伴。”
Tim Ewald,Foliage 软件公司首席架构师,
Transactional COM+: Building Scalable Applications一书作者
“本书极为出色,它让那些庞大且重要的领域驱动设计思想触手可及。”
Floyd Marinescu,EJB Design Patterns一书作者,
著名技术社区InfoQ.com和TheServerSide.com创始人
“理解问题领域中的概念和驱动力量对于软件开发成功具有至关重要的意义。Jimmy Nilsson从他对模式和领域驱动设计的10年研究中提炼出灵感,记录了他自己从具体开发项目中汲取的经验。本书包含一些关于如何将理论转化为实践的生动示例,展示了作者对面向对象开发中的设计选择和方案折中的深刻理解。”..
Anders Hessellund,丹麦哥本哈根IT大学
“本书紧扣一个重要领域,这个领域对大多数在.NET平台上工作的开发人员都提出了挑战。我是一名负责推动.NET企业指导工作的模式和实践架构师,深知这个领域对客户的重要性,同时深深认识到我们的指导工作仍存在巨大差距。
我很激动地看到Jimmy将他从事DDD和TDD的经验拿出来与我们分享。我相信此时此刻,通过重点关注构建应用程序的简单性、模式以及对社会层面的认识,这个主题会及时得到最好的处理。
我相信Jimmy在.NET方面的经验和知识,也很欣赏他讲述概念和故事的风格。我很难想出还有什么别的人更适合解释这个我每天都在上面工作的平台。
我会毫无保留地将Jimmy的这本书推荐给我的客户、我的团队和其他微软工程师。
.最后,我希望我们的行业能够更好地用代码表达丰富的概念,能够在表达和演进共享知识的社会化过程中做得更好。TDD和DDD都是实现这些目标的核心技术。”
Edward Jezierski,微软模式和实践架构师
“Jimmy将领域驱动设计、测试驱动开发、重构和设计模式的技术精华整合为一体,可以令人信服地取代已成为Microsoft应用程序的中流砥柱的数据驱动开发风格。本书的核心为领域驱动设计中倡导的技术赋予了生命。它具有非常强的实用性,帮助读者深入地理解思考过程,从而为运用成熟技巧和技术打下坚实基础。而且,像Jimmy的所有作品一样,本书非常简单易读,好样的,Jimmy!”
Christian Crowhurst,分析师,开发者
“到目前为止,我已经在一个合作项目上与Jimmy共事18个月了。Jimmy真正按他所说的那样去做了。在本书中,他告诉读者他在实践中是如何工作的。他每天都使用O/R映射和NHibernate,也真正使用TDD来帮助理解和提炼客户的业务逻辑,并确保只交付经过测试的高质量代码,如同他写的这本高质量的书一样,包含的概念都经过了测试。好好享受本书吧。”
Dan Bystr?m,软件开发人员,www.visual-design.se/blog
“通过展示如何应用领域驱动设计和企业应用模式,Jimmy让更广泛的读者能够理解这个困难的主题。本书有些内容适合经验丰富的架构师和积极的模式实现人员。事实上,任何想要改进软件解决方案设计和实现方法的开发人员或架构师都应该阅读本书。”
Per-Ola Nilsson,Luvit的开发主管和软件架构师
“Jimmy总是站在软件开发最新趋势的前沿,但却从不会迷失方向,他最擅长的就是去粗取精。他兼备谦逊的品质和集思广益的精神,因此非常适合指导和启发读者,他将实际可用性作为标准,而避开象牙塔。Jimmy并不是居高临下地提供帮助,而是设法让读者感觉到正在向一位同事学习最前沿的技术。”
Mats Helander,软件开发人员,www.matshelander.com
“就像Jimmy的前一本书一样,本书是一部真正的杰作:它在实际软件工程与深层次理论之间做出了良好的平衡。”
Frans Bouma,LLBLGen Pro的创建者,weblogs.asp.net/fbouma
“本书拥有坚实的基础,Jimmy在运用领域驱动设计的实践中解决实际问题。最后,我们拥有了一本手册,使我们在处理未来基于领域模型的企业应用时,不会由于不断增加的复杂性而碰壁。”
Paul Gielens,Capgemini的高级顾问,weblogs.asp.net/pgielens
“从经验谈起,结合.NET中DDD、DP和TDD的实质,就可以得到非常有效且具有自适应能力的企业软件架构。本书解释了如何以及为什么这些概念共同构成一个强大的整体。因此,本书为读者提供了一个构建成功企业软件架构的宝贵捷径,对于任何相关的开发人员来说,这都是一本必读的书。”
Martin Rosén-Lidholm,Exense Healthcare的软件架构师
“你是否希望用面向对象技术和关系数据库来构建一个高质量企业系统?那么请不要错过本书。Jimmy将为你展示测试驱动开发如何成为整个项目中的驱动力量。他展示了如何将OO设计映射到数据库,通常在其他文献中对这一步的讨论过于简略,单就这一点本书就物有所值。本书还包含大量的设计提示和讨论,让读者可以紧跟作者的推理过程。”
Ingemar Lundberg,一位热情的软件开发人员,www.ingolundberg.com
“这是一本重要且及时的书,对于任何希望进入C#领域驱动设计领域的人来说,它都是一本必读的书。”
Gregory Young,微软C# MVP,独立顾问
“本书讨论了现代软件开发中所使用的一些重要概念,例如测试驱动开发、重构、模式,当然还包括领域驱动设计。Jimmy Nilsson以非常通俗的语言介绍了这些概念,阅读本书时,感觉似乎他正坐在你身边,为你展示他的示例,并亲自与你讨论不同解决方案的利弊。”
Niclas Nilsson,Activa软件开发人员和教育者
“本书出色地将领域驱动设计(DDD)引入实际语境,它在各个不同抽象层之间架起桥梁,从业务角度层向下一直到系统层。本书最适合软件架构师和开发人员,因为其编排方式使得它既可以被用作入门书也可作参考书。作者全面介绍了DDD的所有方面,本书不仅具有教育意义,而且也充满了阅读乐趣。”
Gunther Lenz,项目经理和技术作家
“就在不久前,我在博客上记录了我的总体感受:作为架构师,我们可能无法提供足够的指导,以便让开发人员能够在数百种软件构建方式中做出正确选择。很多开发思想本身都非常优秀,并且有着相当充分的理由和成功示例,还拥有热情的信仰者社区。在这些构建方式当中,只有很少的一些可用来独立构建应用程序,能用来构建应用系统和服务系统的就更少了。这就需要开发人员决定用什么方式将独立的思想整合到应用程序当中。不难想象,在现实中,这比任何特殊方法的提议都要困难得多。另一方面,开发人员需要完成工作,通常不愿意每次开始构建新应用程序时都去全面考虑这一切。甚至在他们真正有兴趣利用新方法或新思想的潜力时,亦是如此。Jimmy的书直接针对这个问题。如何将过去几年中的一些伟大思想应用于实际的、实时的开发?我认为本书做了卓越的工作,它不仅足够详细地解释了基本思想,以便让它们具有实际意义,而且将一系列思想综合到一起,以便帮助开发人员从头至尾地了解整个路线。本书全面涵盖领域驱动设计、测试驱动开发、依赖注入、持久化等很多实际问题。在阅读本书后,我认为读者将真正掌握这些重要思想,并有效地将它们结合起来使用。由于每一种思想都具有极大的价值,但人们真正使用它们的范例却很有限,因此本书对于我们所有人来说是一场共赢。我强烈推荐它。”
Philip Nelson,PAi首席科学家,xcskiwinn.org/community/blogs/panmanphil/default.aspx
“领域驱动设计、测试驱动开发、对象/关系持久化等敏捷方法和模式都涉及较深层的OOP技术。对于刚刚起步的人来说,想要从以数据为中心的思想跨越到较深层次的OOP实现是一件费力且易令人迷惑的任务。
凭借耐心、注重实效和循循善诱的风格,Jimmy带领读者完成了这个跨越过程,研究了问题及各种情形,并在整个过程中提供了合理的建议。本书展示了如何将各种方法和模式整合为一个紧密耦合的方法,从而设计和创建具有高度可维护性的.NET软件。”
George Hicks,Property Works公司高级开发人员
“如果你曾经读过Jimmy Nilsson的博客,那么你会知道他喜欢挑战.NET社区中的现有‘真理’,并寻找更好的软件设计方式。他承认软件设计是困难的,而且并没有通用解决方案;必须对目前问题语境下的利弊进行权衡,才能最终选出一个解决方案。对于构建具有复杂业务需求的、可测试且可维护的软件,Jimmy选择使用领域驱动设计,而且他引入了一个工具箱,其中包含经过检验且公认的原则、模式和实践,用于实施领域驱动设计。Jimmy通俗易懂的写作风格以及对示例和测试驱动开发的运用使得本书非常易于阅读,特别是本书涵盖了所有基础知识。凭借Jimmy对DDD内容的精通,他和他的朋友为读者带来了当今软件开发领域中许多最有价值的技术和资源的精华。我相信本书是应用DDD的宝贵指南,而且适用于所有想要提高总体设计技巧的开发人员。”
Andreas Brink,软件开发人员
“本书加强了Jimmy Nilsson在应用软件架构领域中的权威地位。本书完美地融合了他在各个主题上的个人思想,带领读者了解所有必须掌握的现代设计技术,未留下任何知识上的遗漏。Jimmy通过一种引人入胜且易于理解的结构,展示了如何实现其他思想领袖更理论性的思想。我敢肯定本书将成为企业书架上一本必备的图书。”
Mikael Freidlitz,IASA公司副总裁
“领域驱动设计是一项重要技术,它能够帮助创建随业务需求演进的高质量业务应用程序。在理想世界中,DDD实践就是关于OO设计的,但在现实世界中,我们所使用的技术强加了大量约束。
本书直面这个挑战,它在DDD概念与将这些概念转化为.NET平台实践之间架起一座桥梁。Jimmy不仅对DDD和企业技术有着深刻理解,而且从丰富的行业经验中汲取了很多经验教训,并采用了一种全新的实用方法。这是一本极有价值的书。”
Rod Johnson,Spring Framework的创立者,Interface21的CEO
“这是一本优秀的书。它将读者带入领域驱动设计世界的实用、博学之旅。本书在相关语境中讨论、解释和展示了大量重要问题。这些知识将为读者使用自己的基于域模型的系统打下坚实基础。本书既讨论了实际开发技术,也讨论了实用的工作方法(与测试驱动开发结合起来)。”
Trond-Eirik Kolloen,软件架构师和开发人员
“现在我们能集中精力修修房子了吗?”
我的妻子,Lotta
“Aaa, dee, dee, dee, pee...”(用瑞典语发音读本书书名首字母)
我的儿子Leo,4岁
“爸爸,你真认为有人会看这本书吗?”...
我的儿子Tim,8岁