领域驱动设计好在哪里
Posted 活动家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了领域驱动设计好在哪里相关的知识,希望对你有一定的参考价值。
DDD的全称为Domain-driven Design,即领域驱动设计。十五年前, Eric Evans 出版了划时代的著作《领域驱动设计:软件核心复杂性应对之道》,领域驱动在国外 IT 圈已经享有盛誉并且是行之有效的设计方法学,然而国内大多数的技术人员却并不了解,也未曾运用到项目实践中,真可以说是知音稀少。但随着微服务的热起,领域驱动设计变得越来越受人重视。
领域驱动好在哪
从Eric Evans的《领域驱动设计:软件核心复杂性应对之道》一书的书名就可以看出这一方法论是为了解决软件核心复杂性的。也就是说软件业务越来越复杂了,领域驱动设计可以让事情变得简单。
总结了一下主要有以下6点:
领域驱动设计是一套完整而系统的设计方法,它能带给你从战略设计到战术设计的规范过程,使得你的设计思路能够更加清晰,设计过程更加规范。
领域驱动设计尤其善于处理与领域相关的高复杂度业务的产品研发,通过它可以为你的产品建立一个核心而稳定的领域模型内核,有利于领域知识的传递与传承。
领域驱动设计强调团队与领域专家的合作,能够帮助团队建立一个沟通良好的团队组织,构建一致的架构体系。
领域驱动设计强调对架构与模型的精心打磨,尤其善于处理系统架构的演进设计。
领域驱动设计的思想、原则与模式有助于提高团队成员的面向对象设计能力与架构设计能力。
领域驱动设计与微服务架构天生匹配,无论是在新项目中设计微服务架构,还是将系统从单体架构演进到微服务设计,都可以遵循领域驱动设计的架构原则。
门槛高
虽然领域设计有诸多好处,但也不是万能的,它是针对复杂软件系统的,而且领域驱动设计的门槛很高,没有很深厚的面向对象编码能力几乎不可能实践成功。
架构方式 |
项目前期难度 |
项目后期难度 |
以数据驱动 |
易上手 |
急剧上升 |
领域驱动设计 |
难以上手 |
平滑上升 |
领域驱动设计的核心是领域模型,这一方法论可以通俗的理解为先找到业务中的领域模型,以领域模型为中心驱动项目的开发。而领域模型的设计精髓在于面向对象分析,在于对事物的抽象能力,一个领域驱动架构师必然是一个面向对象分析的大师。
领域驱动秘诀
要掌握领域驱动设计,就不要被它给出的概念所迷惑,而要去思索这些概念背后蕴含的原理,多问一些为什么。同时,要学会运用设计原则去解决问题,而非所谓的“设计规范”。例如:
思考限界上下文边界的划分,实际上还是“高内聚、低耦合”原则的体现,只是我们需要考虑什么内容才是高内聚的,如何抽象才能做到低耦合?
是否需要提取单独的限界上下文?是为了考虑职责的重用,还是为了它能够独立进化以应对未来的变化?
在分层架构中,各层之间该如何协作?如果出现了依赖,该如何解耦?仍然需要从重用与变化的角度去思考设计决策。
为什么同样遵循领域驱动设计,不同的系统会设计出不同的架构?这是因为不同的场景对架构质量的要求并不一样,我们要学会对架构的关注点做优先级排列,从而得出不同的架构决策。。
如果对领域设计感兴趣可以来参加【第二届领域驱动设计峰会】,在过去的半年中,很多企业和团队都在努力尝试把领域驱动设计(DDD)的原则和自己业务场景结合起来,通过建立统一语言,提升业务和技术之间的沟通效率,最大限度的提升系统响应能力。
在解决同一个业务问题的前提下,更高效更低成本的架构,会淘汰低效高成本的架构。领域驱动设计(DDD) 让架构更高效,打破了架构和业务之间的隔阂,其流行的意义就在此。
2018第二届领域驱动设计峰会
将邀请来自欧洲和北美的领域驱动设计(DDD)的领军人物,以及国内诸多在过去一年当中努力实践领域驱动设计(DDD)的团队及代表与会,和业界一起分享领域驱动设计(DDD)理论的最新发展动态和实践经验总结。
时间:2018-11-29
地点:北京国际会议中心
六大峰会主题
一、领域驱动设计与企业级云IT架构
二、领域驱动的业务中台
三、领域统一语言的实践模式
四、领域驱动设计与架构师
五、领域驱动设计与演进式架构
六、领域驱动与响应式设计
会议门票
早鸟票最后一周啦,立省500!(11月11号截止):
微服务实战工作坊(11月30日)团购票:原价¥768
,现价¥512
微服务实战工作坊(11月30日):¥768
早鸟票团购票:原价¥1024,现价¥768((11月11号截止)
早鸟票:原价¥1536,现价¥1024(11月11号截止)
工作坊票:¥5120
基于复杂性认知的设计思维工作坊(11月30日):¥7500
标星:活动家
不错过任何一场重要会议
活动家,一站式会议查询与报名平台,让您参会更放心!
官网:
客服:028-69761252
关注活动家小程序
查看更多优质会议
点击阅读原文,查看更多会议详情
以上是关于领域驱动设计好在哪里的主要内容,如果未能解决你的问题,请参考以下文章