引言:目前我们的系统基本都是业务驱动,代码边界是以业务为准,所以领域驱动设计,作为一种架构风格,如何结合业务场景落地,如何进行技术填充,就是重中之重。(注:请不要套用任何技术栈、一定要对业务熟悉)什么是DDD领域驱动设计(Domain-Driven Design)软件是不区分行业的,软件只是给各个行业赋能,比如电商、物流、游戏、金融、医疗、物业等等。业务的建立一般是由:运营传递到产品,然后产品设计交给研发。整个链路中会出现消息传递不准确,或者说消息失真,那么最终做出来的可能和原本的需求会有偏差,那么就会有更多的需求变更,代码修改。而不断的代码修改会导致代码的复杂度增加,最终必须要重构。为了解决这个问题,就提出了领域。早期的领域模型:数据库设计。根据业务建表,然后建立对象,任何需求的变更都有可能导致字段的调整,也会使得业务的复杂度上升,级联关系变得很重,耦合度增加。这种适合瀑布式开发。而现在更多的是敏捷开发。实际上,项目在每个月2-3次发版的过程中,始终处于实验阶段,也就是需求会频繁的变更。所以就不能用表结构去代表模型,而是需要一个更加抽象的东西去代表。在软件设计的过程中,已经开始出现。

技术 · 2019-12-20
Theme Jasmine by Kent Liao