什么是Eclipse Modeling Framework?

时间:2011-06-19 22:34:02

标签: eclipse eclipse-emf

对不起,这可能看起来太简单了,但我对Eclipse Modeling Framework的含义模糊不清?

基于他们的网站,它根据XML规范生成java代码 我想知道它是否像Visual Paradigm? 它是为其他语言(如PHP)生成代码还是仅为Java生成代码?

感谢。

2 个答案:

答案 0 :(得分:6)

EMF是一个框架,可以采用模型(如.ecore文件中所述)并生成支持Java文件,可以与EMF一起使用来构建,加载,操作和保存该模型的实例。 / p>

这意味着您在编写Java应用程序时需要使用EMF并且想要操作模型(语言的抽象语法树,可以由View显示的模型,需要操作的域等)

有很多建模项目,它们增加了对越来越多功能的支持,但大部分都基于EMF。

答案 1 :(得分:3)

基本上,EMF是开发模型驱动开发(MDD)工具的框架。

您感兴趣的工具位于Model To Text (M2T)部分。使用 JET 等工具,您可以使用您想要的任何语言生成包含逻辑的业务对象,而不仅仅是简单的DTO。您可以从自己定义的域特定语言(DSL)(通常是XML)或标准建模语言( UML Encore )生成代码。

当您选择建模语言时,可以使用图形工具( GMF )构建模型。此外,EMF还有您期望的验证/翻译工具。

尝试了几种代码生成工具后,我可以说这是一次有价值的实验。但是,它需要大量投资才能学习并使您面临依赖于某个特定工具的风险。如果您发现自己需要代码生成工具,还要考虑您可能有language smell或者没有重构足够的重复。