为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第2天+DDD和面向对象区别?

标签:
Java

课程名称:DDD(领域驱动设计)思想解读及优秀实践

课程章节: 领域驱动设计的背景和来源

课程讲师: 尤达_技术咖啡

课程内容:它和现有方法体系的联系和区别(如面向对象设计思想、敏捷)?以及学习DDD对技术人员的成长有什么意义?我们应该怎样学习DDD?

1,DDD设计主要分为两个过程:战略设计与战术设计。

面向对象: OOAD(现实抽象出对象)和OOP

2,OOAD没有战略设计,DDD通过战略设计划分领域和模型;

3,OOAD仅用对象描述世界**(1,不关心系统划分的方法,导致整个系统柔和在一起,得到的是多个子领域的模型柔和到一起的模型,2,导致对象与对象之间的关系非常复杂也无法进行控制, 1,DDD在设计会进行战略设计,对问题和系统进行拆分成不同的子领域,建立的模型对象更容易控制( 2,面向对象建立的对象模型,所有的事物都是对象,描述的是对象与对象之间的关系,而ddd描述的更加细致,对象进一步细分,实体对象和值对象,聚合和聚合根的概念,这样在将模型转换成代码过程中更清晰))**,DDD的描述更加细致,更贴近与真实世界。

共同点:两者都是建模和设计思想,部分建模方法(设计模式)和工具都可复用。面向对象的建模方法和工具,在DDD是可以复用(用例分析,类图,序列图等待)

系统划分更细-》对象进一步划分-》模型转换成代码实现更清晰

2,面向对象设计仅仅是将对象进行抽象成实体(可以称为贫血模式)

DDD****设计是将对象抽象成实体和行为(充血模式)

充血模型DDD开发模式重domain轻service,而贫血模型重service轻BO

敏捷,关注流程和文化,DDD关注建模设计方法;敏捷,重人员轻文档,DDD重视统一语言的简历。两者都是软件工程领域的思想,解决软件工程中不同阶段的问题,一般可以结合应用。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消