《领域模型》——通过重构得到更深层次的理解
三件事情要关注:
1、 以领域为本
2、 用一种不同的方式看待事情
3、 始终坚持与领域专家对话
开始重构:开发人员通过学习获得了更深刻的理解,从而发现一个更清晰或者更有用的模型的机会
探索团队:不管问题的根源是什么,下一步都是要找到一种能够使模型表达变得更清楚和自然的精化方案。修改的发起者应该挑选几位开发人员一起工作,这些开发人员应该擅长思考该类型的问题,了解领域或者掌握更深厚的建模技巧。通过头脑风暴画出新的UML草图。主要注意的是:注意范围、练习使用统一语言。
借鉴先前的经验:没有必要做一些无谓的重复工作,用于查找丢失概念或改进模型的头脑风暴过程具有更大的潜力,通过这个过程可以收集来自各个方面的创意,并把这些创意与已有知识结合起来。随着知识笑话的不断开展,就能找到当前的答案。
针对开发人员设计:柔性设计,让代码表名他的意图,这样的设计使人们很容易看出代码的运行效果。
重构的时机:持续重构渐渐被认为是一种“最佳实践”,但大部分项目团队仍然对他抱有很大的戒心,人们虽然知道修改代码有风险,还要花时间开发、测试,却不知道维持一个拙劣的设计也有风险以及迁就这种设计付出的代价。发布前不要重构,不要引入一些只顾炫耀技术能力而没有解决领域核心问题的“柔性设计”。
危机就是机遇:你突然发现模型中有一些明显的缺陷,在表达方面显示出一个很大的漏洞,或存在一些没有表达清晰的关键区域,或有些描述就是错误的,这都表名团队对模型的理解已经达到了一个新的水平,现在站在更高的层次上发现了原有模型的弱点,就可以从这个角度构思一个更好的模型