- 35
- 0
- 约1.79万字
- 约 46页
- 2022-03-21 发布于浙江
- 举报
?
?
领域驱动设计在美团点评业务系统的实践
?
?
至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大环境下,DDD似乎是一种比较“古老而缓慢”的思想。然而,由于互联网公司也逐渐深入实体经济,业务日益复杂,我们在开发中也越来越多地遇到传统行业软件开发中所面临的问题。本文就先来讲一下这些问题,然后再尝试在实践中用DDD的思想来解决这些问题。
过度耦合
业务初期,我们的功能大都非常简单,普通的CRUD就能满足,此时系统是清晰的。随着迭代的不断演化,业务逻辑变得越来越复杂,我们的系统也越来越冗杂。模块彼此关联,谁都很难说清模块的具体功能意图是啥。修改一个功能时,往往光回溯该功能需要的修改点就需要很长时间,更别提修改带来的不可预知的影响面。
下图是一个常见的系统耦合病例。
订单服务接口中提供了查询、创建订单相关的接口,也提供了订单评价、支付、保险的接口。同时我们的表也是一个订单大表,包含了非常多字段。在我们维护代码时,牵一发而动全身,很可能只是想改下评价相关的功能,却影响到了创单核心路径。虽然我们可以通过测试保证功能完备性,但当我们在订单领域有大量需求同时并行开发时,改动重叠、恶性循环、疲于奔命修改各种问题。
您可能关注的文档
最近下载
- 预发泡珠粒的熟化.pptx VIP
- Stylistic Features of News English 论新闻英语的文体特征.doc VIP
- 英语文体学论文Stylistic Analysis of News Report.doc VIP
- 【PPT】-TOYOTA广汽(汽车)员工行为规范培训讲解PPT-汽车.ppt VIP
- 预发泡工艺过程.pptx VIP
- 中华民族的抗日战争(1931——1945)+课件--2027届高三统编版必修中外历史纲要上一轮复习.pptx
- 智能物流 智能物流 第04章.pptx VIP
- (课件1)《有理数及其运算》复习.ppt VIP
- 2019成都熊猫之都总体策划及概念性规划 SASAKI(96P).pdf VIP
- 人教版六年级数学上册(全册)教案教学设计及教学反思.pdf VIP
原创力文档

文档评论(0)