核心部件的设计代表了AndroMDA扩展的野心
1.Template Engines
目前使用Velocity作为模板语言,支持向其他语言的扩展。
2.MetaFascade
提供一个高层的Meta-Data访问API, 支持UML1.3、1.4、2.0等等语法的MOF model并可自行扩展。
3 Repositories 支持从XMI文件中读取MOF model,支持其他格式的扩展。
4.Cartridge
通过MetaFascade读取元模型,通过模板生成代码的核心。AndroMDA自带了Spring,Hibernate等Cartridge,也可自行扩展。
5.Translation-Libraries 把平台无关代码翻译成平台相关代码。比如Hibernate的getXXX()方法的HSQL语句,用者可以选择用Tagged Value写在模型里,也可以选择写成平台无关的OCL查询语言,然后用Query-Translation把它翻译成Hibernate HSQL,日后也可次翻译成EJB的EQL。
目前有Query和Valiations两个Library,亦可自行扩展。[@more@]
1.Template Engines
目前使用Velocity作为模板语言,支持向其他语言的扩展。
2.MetaFascade
提供一个高层的Meta-Data访问API, 支持UML1.3、1.4、2.0等等语法的MOF model并可自行扩展。
3 Repositories 支持从XMI文件中读取MOF model,支持其他格式的扩展。
4.Cartridge
通过MetaFascade读取元模型,通过模板生成代码的核心。AndroMDA自带了Spring,Hibernate等Cartridge,也可自行扩展。
5.Translation-Libraries 把平台无关代码翻译成平台相关代码。比如Hibernate的getXXX()方法的HSQL语句,用者可以选择用Tagged Value写在模型里,也可以选择写成平台无关的OCL查询语言,然后用Query-Translation把它翻译成Hibernate HSQL,日后也可次翻译成EJB的EQL。
目前有Query和Valiations两个Library,亦可自行扩展。[@more@]
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8591181/viewspace-899279/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8591181/viewspace-899279/