登峰造极境

  • WIN
    • CSharp
    • JAVA
    • OAM
    • DirectX
    • Emgucv
  • UNIX
    • FFmpeg
    • QT
    • Python
    • Opencv
    • Openwrt
    • Twisted
    • Design Patterns
    • Mysql
    • Mycat
    • MariaDB
    • Make
    • OAM
    • Supervisor
    • Nginx
    • KVM
    • Docker
    • OpenStack
  • WEB
    • ASP
    • Node.js
    • PHP
    • Directadmin
    • Openssl
    • Regex
  • APP
    • Android
  • AI
    • Algorithm
    • Deep Learning
    • Machine Learning
  • IOT
    • Device
    • MSP430
  • DIY
    • Algorithm
    • Design Patterns
    • MATH
    • X98 AIR 3G
    • Tucao
    • fun
  • LIFE
    • 美食
    • 关于我
  • LINKS
  • ME
Claves
长风破浪会有时,直挂云帆济沧海
  1. 首页
  2. Programming
  3. 软件架构
  4. 正文

领域驱动设计学习笔记-基础

2021-11-22

一、核心思想与解决的痛点问题

1.1 模型和建模

模型是领域的抽象和模拟

建模是针对特定问题建立领域的合理模型

1.2软件系统复杂性

业务复杂导致模型复杂

技术实现引入额外复杂性

DDD核心思想一:模型分解

DDD核心思想二:模型驱动设计

模型驱动设计(Model Driven Design):通过分层架构隔离领域层、仔细选择模型和设计方案等措施保持实现与模型的一致。

领域驱动设计通过分解模型和模型驱动设计控制复杂性。

二、面向对象与敏捷与ddd区别于联系

2.1 DDD与面向对象

区别:OOAD没有战略设计;DDD通过战略设计划分领域和模型。OOAD仅用对象描述世界;DDD的描述更细致。

联系:OOAD和DDD都是建模和设计思想,部分建模方法和工具可复用。

2.2DDD与敏捷

敏捷是增量式开发模式。

敏捷:关注流程和文化;DDD:关注建模设计方法。敏捷:重人员轻文档;DDD:重视统一语言建立

标签: 暂无
最后更新:2021-11-22

代号山岳

知之为知之 不知为不知

点赞
下一篇 >

COPYRIGHT © 2099 登峰造极境. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备14031139号-5

川公网安备51012202000587号