美文网首页
DDD(Domain Driven Design)领域驱动设计简

DDD(Domain Driven Design)领域驱动设计简

作者: 言己言 | 来源:发表于2018-10-29 15:20 被阅读0次
    • 软件设计是一门艺术,像其他艺术一样,它不能通过定理和公式以 一门精确科学的方式被教授和学习。通过软件创建的过程,我们可 以发现有用的规律和技巧,但是我们也许永远不能提供一个准确的 方法,以满足从现实世界映射到代码模型的需要。如同一幅画或者 一个建筑,软件产品既包括设计和开发它的那些人的个人劳动,也 包括致力于它发端和成长的那些人的某些领导力和洞察力。

    • “为了创建一个好软件,你必须知道这个软件究竟是什么。在你充分 了解金融业务是什么之前,你是做不出一个好的银行业软件系统 的,你必须理解银行业的领域。”

    • 在启动一个软件项目时,我们应该关注软件涉及的领域。软件的最 终目的是增进一个特定的领域。为了达到这个目的,软件需要跟要 它服务的领域和谐相处,否则,它会给领域引入麻烦,产生障碍、 灾难甚至导致混乱等。
      我们怎样才能让软件和领域和谐相处呢?最佳的方式是让软件成为 领域的反射(映射)。软件需要具现领域里重要的核心概念和元 素,并精确实现它们之间的关系。软件需要对领域进行建模。

    • 领域驱动设计的一个核心的原则是使用一种基于模型的语言。因为 模型是软件满足领域的共同点,它很适合作为这种通用语言的构造 基础。
      使用模型作为语言的核心骨架。要求团队在进行所有的交流是都使 用一致的语言,在代码中也是这样。在共享知识和推敲模型时,团 队会使用演讲、文字和图形。这儿需要确保团队使用的语言在所有 的交流形式中看上去都是一致的。因为这个原因,这种语言被称为 “通用语言(Ubiquitous Language)”。
      通用语言连接起设计中的所有的部分,建立了设计团队良好工作的 前提。可能会花费数周乃至数月的时间才能让一个大规模项目的设 计成型。团队成员会发现一些初始的概念是不正确的或者不合适 宜,或者发现一些需要考虑并放进总体设计中的新的设计元素。没 有了通用语言,所有的这一切都是不可能的。

    相关文章

      网友评论

          本文标题:DDD(Domain Driven Design)领域驱动设计简

          本文链接:https://www.haomeiwen.com/subject/weyozftx.html