CDD 是如何工作的
我已经描述了配置驱动开发的基础。为了更好地理解它是如何工作的,我们来考虑一个来自真实世界的示例。在本节中,我将描述我的团队在开发 Rational Portfolio Manager 中采用的配置驱动开发解决方案。
在 XML 文件中存储配置
在配置驱动的开发中,开发人员主要在 XML 文件中进行所有修改。与应用程序相关的所有其他文件都从这些文件中读取它们的配置,要么是在运行时读取配置,要么是在构建时生成选择的组件。在 Rational Portfolio Manager 项目中,我们在配置文件中存储以下组件和信息:
应用程序对象
错误代码
- 它们的惟一标识符
- 它们的文档
- 它们在运行时生成的消息
- 它们使用的参数
Web 服务接口定义
- 暴露的方法
- 文档
- 它们使用验证规则时用到的参数
- 它们在应用程序安全框架中的限制
图 3 显示典型的配置驱动构建过程。
图 3. 配置驱动构建过程示例
所需的工具
下面的工具对于配置驱动的开发很重要:
编辑工具
在大多数情况下,简单的文本编辑器对于编辑 XML 文件已经足够了。优秀的 XML 编辑器会在修改文件时检验语法的有效性,并简化 XML 标记的编辑。
读取工具
为了从 XML 文件中获得信息,需要利用某种工具将 XML 文件直接装载到应用程序中。例如,可以使用 Java 库 Betwixt 将 XML 配置的上下文填充到 Java 文件。
用来生成工件的工具
在读取配置文件之后,下一个逻辑步骤是让产品的其他部分利用这些配置信息。这时有几种方法。第一种是将配置文件嵌入软件本身,这样就可以在运行时读取它们。另一个方式是使用工具(比如 Apache Commons 的 Java Velocity 引擎)生成代码和文档。
规则
大多数应用程序开发人员熟悉以下规则,但是与 Java 开发或极限编程中的做法相比,在配置驱动的开发中它们的应用方式有所不同。
1. 保持简单
配置文件必须容易理解和改进。尽管这似乎是理所当然的,但是有经验的 XML 用户常常使用不利于 CDD 方式的高级特性,比如那些使 XML 难以读取和理解的语法。
2. 根据需要进行改进
预定义的 XML 布局不会满足每个开发人员的需要。对这个问题的解决方案是,让 XML 布局能够适应需求。根据领域或软件体系结构的不同,类或字段定义中使用的 XML 属性有很大的差异。请记住,改进应该避免用户破坏 “保持简单” 规则。在上面的示例中,很容易发现许多配置参数在几乎所有其他产品中都没有用。市场上还没有工具能够简化它们的实现。
3. 尽早且经常进行验证
常识指出,在开发过程中越早发现错误,就越容易解决。根据这条原则,尽可能早些对配置进行详尽验证是有意义的。例如,可以使用 XSD 或 DTD 文件验证配置文件的 XML 结构。如果需要应用定制的验证规则,那么要毫不犹豫地实现自己的验证工具。尽管编写这些工具花费的时间并不是花费在最终产品的时间,但是这种投资是值得的。
文章来源于领测软件测试网 https://www.ltesting.net/