基于Design Pattern Toolkit的开发
2009-12-17 00:00:00 来源:WEB开发网表1向您展示了umlProfile.patzip中包含的所有模板文件,您可以在已有模板基础上做任意的修改,以适合应用程序的需求。
我们通过一个简单的模板文件(图4),向您介绍如何通过模板标签从模型中提取数据,并插入静态文本中。plugin.xml.pat文件定义了 plugin.xml的视图模板,它由静态文本以及模板标签两部分组成。plugin.xml.pat由两种类型的标签组成:<attr> 和<iterate>标签。
<attr>标签被用来提取输入的XML文件中节点属性的值,通常包含node, name, 以及format属性:node属性为一个xpath表达式,通过它,可以查找到appdef中的特定节点;name指定了node的一个属性名;format定义了如何对属性值进行格式化。
<iterate>标签被用来提取nodes中定义的所有节点,对于每个节点,把它与name的值关联起来,这样在循环体中,该节点能够以name的值进行引用。
4.3 编写模型文件appdef
模型文件appdef通常为XML格式,模式的设计人员定义一个隐式的XML Schema,该Schema描述了appdef文件中应该包含哪些信息,以及这些信息如何被组织。针对UML Profile模式,我们编写模型文件(图5):
图5 sample.appdef文件<app>
<plugin id="demo.gerken.profile.plugin" jarName="demo.jar" shortName="SUDemo" >
<profile name="SU_DEMO" >
<type name="Plugin" >
<association name="Prereqs" targetType="Plugin" />
<association name="Provides" targetType="Dialog" />
<attribute name="id" />
<attribute name="shortName" />
<attribute name="author" />
</type>
<type name="Dialog" >
<association name="Displays" targetType="Widget" />
<attribute name="title" />
<attribute name="width" />
<attribute name="height" />
</type>
<type name="Widget" >
<attribute name="type" />
<attribute name="name" />
<attribute name="scrollable" />
</type>
</profile>
</plugin>
</app>
- ››基于IP地址的vsftp服务器
- ››基于MySQL 水平分区的优化示例
- ››基于CentOS5的Linux下pptp和openvpn的搭建及配置
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››基于Windows Azure的云计算应用设计
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用
- ››基于SolidWarks齿轮机构的运动分析与仿真
- ››基于Windwos Server 2008故障转移群
- ››基于JavaScript的REST客户端框架
- ››基于JavaScript和CSS的Web图表框架横向对比
更多精彩
赞助商链接