DDD 领域驱动设计 第3章 绑定模型和实现

3.1 模式: Model-Driven Design

严格按照基础模型来编写代码,能够使代码更好地表达设计含义,并且使模型与实际的系统 相契合。

     如果整个程序设计或者其核心部分没有与领域模型相对应,那么这个模型就是没有价值的,  软件的正确性也值得怀疑。同时,模型和设计功能之间过于复杂的对应关系也是难于理解的,在 实际项目中,当设计改变时也无法维护这种关系。若分析与和设计之间产生严重分歧,那么在分  析和设计活动中所获得的知识就无法彼此共享。

       MODEL-DRIVEN DESIGN(模型驱动设计)不再将分析模型和程序设计分离开,而是寻求一种 能够满足这两方面需求的单一模型。不考虑纯粹的技术问题,程序设计中的每个对象都反映了模型中所描述的相应概念。这就要求我们以更高的标准来选择模型,因为它必须同时满足两种完全不同的目标。

因此:

      软件系统各个部分的设计应该忠实地反映领域模型,以便体现出这二者之间的明确对应关系。我们应该反复检查并修改模型,以便软件可以更加自然地实现模型,即使想让模型反映出更 深层次的领域概念时也应如此。我们需要的模型不但应该满足这两种需求,还应该能够支持健壮 的UBIQUITOUS LANGUAGE(通用语言)。

      从模型中获取用于程序设计和基本职责分配的术语。让程序代码成为模型的表达,代码的改 变可能会是模型的改变。而其影响势必要波及接下来相应的项目活动。

完全依赖模型的实现通常需要支持建模范式的软件开发工具和语言,比如面向对象的编程。

3.2 建模范式和工具支持

     像C这样的语言并不适用于MODEL-DRIVEN DESIGN,因为没有适用于纯粹过程语言的建模范式

     面向对象设计是目前大多数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值