实现在异质环境中的服务接口需要大量代码,这些代码中的大多数经常结构相同,只能根据不同的参数、
异常和其他配置数据来区分,这是应用代码生成器,或者用一个更加被热炒的术语-----"模型驱动的服务开发"
Model-Driven Service Development(MDSD)
一、生成的服务代码
二、建模服务
1、术语
①普适代码
这是对每个实现都一样的代码。例如,对服务而言,这可能是都服务名字的记录日志,
以及处理其他常见技术数据的代码。如果有可能以普适的方式处理参数(例如,使用java的反射)
,这样的代码也归于本类别。
②纲要代码
6这是结构相同,然而根据具体情况多少有些区别的代码。例如,为了将服务的所有参数映射到一个
有特定数据类型的API上,纲要代码将使用特定名字和类型逐个地处理参数,而普适代码则以共通的
方式对所有参数进行循环处理。
③没有共同性质的代码
对服务而言,这是指一个服务特定功能的具体实现。
三、建立MDSD过程
一旦你定义了哪些代码由哪个模型生成,你可以认为自己的MDSD工作已经完成了。
然而,还有一个重要的问题没回答:谁,以及什么时候执行转换盒代码生成?从概念上,
可能有3种不同的方法
1、消费者驱动的转换
需要转换后结果的人执行转换
2、供应者驱动的转换
定义转换源(源模型)的人执行转换
3、第三方驱动转换
一个单独的团队执行转换
四、工具
在当代,几乎所有建模语言都使用基于XML的格式,所以,一个用于转换或代码生成的工具
很可能是:扩展样式表转换语言(XSLT)。