将隐式概念转变为显式概念学习笔记

将隐式概念转变为显式概念.

深层模型之因此这样能强大,由于它包含了领域的核心概念和抽象,可以以简单灵活的方式表达出基本的用户活动,问题以及解决方案.深层模型第一步就是要表达领域的基本概念.编程

概念挖掘

倾听语言

若是你有机会和业务专家交流,那么就有可能听到他们重复提到某些概念.那么这些概念就很重要.使用他们将极大的改善你的模型函数

检查不足之处

检查你的系统最复杂且难以解释的地方.这个地方能够询问领域专家,听取他们的意见.若是没有领域专家,你须要本身来理解并挖掘其中的概念测试

思考矛盾之处

若是在程序的开发过程之中发现有概念理论有矛盾之处,那么认真思考这些地方.你离深层模型又近了一步.设计

查阅书籍

查看那些解释基本概念和传统思想的书籍.这些书籍能够帮组你一开始就造成一致且深度的认识.虽然你还须要和领域专家合做才能将他们转化为面向对象软件的概念对象

尝试在尝试

evans在书中说要尝试六七遍才能获得一个清晰的概念.若是你在作一个没有任何固有参考的模型,那么尝试十几回也是有可能的.不要执拗已见.接口

为什么为那些不太明显的概念建模

书中讲了三个概念:约束,过程,规则ci

显式的约束

约束通常隐含在程序中,显式它们会极大提升设计的质量.你须要根据约束和领域对象的关系将他们提取为方法,对象,对象集合.开发

过程建模为领域对象

这里的过程是指被领域专家常常说起的过程原型

规格(specification)

规格也是一种模式,evans和别人提出的.逻辑编程范式.规格是一个谓词,用来肯定对象是否知足某些标准.io

谓词:计算结果为真假的函数.

规格做用

  • 验证对象

  • 从集合中选择一个对象

  • 指定建立新对象时必须知足某种需求.

指定建新对象时必须知足某种需求

  • 生成器的实现与接口分离
  • 接口把规则显示表示出来,开发人员没法了解细节就能知道结果.
  • 接口更为灵活,只要实现specification的要求就行
  • 便于测试.

经过可工做的原型来摆脱开发僵局

当有其余相关开发团队的工做依赖你的工做时,请先开发出一个可用的原型来知足他们的工做.

相关文章
相关标签/搜索