什么是Eclipse Modeling Framework?

6

很抱歉,这可能看起来太简单了,但我对Eclipse建模框架是什么还不太清楚?

根据他们的网站,它可以基于XML规范生成Java代码。
我想知道它是否类似于Visual Paradigm? 它是否可以为其他语言(如PHP)生成代码,还是只能为Java生成代码?

谢谢。

2个回答

6

EMF是一个框架,它可以接受一个模型(如.ecore文件中所描述的)并生成支持Java文件,这些文件可与EMF一起使用以构建、加载、操作和保存该模型的实例。

这意味着当您编写Java应用程序并希望操作模型(语言的抽象语法树、可以由您的视图显示的模型、需要操作的域等)时,您可以使用EMF。

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


3

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

你可能会对模型转文本(M2T)部分中的工具感兴趣。使用像JET这样的工具,你可以以任何想要的语言生成包含逻辑的业务对象,而不仅仅是简单的DTO。你可以从自己定义的领域特定语言(DSL)(通常为XML)或标准建模语言(UMLEncore)中生成代码。

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

在试用了几个代码生成工具之后,我可以说这是一个值得尝试的实验。但是,它需要大量的学习投资,并使您面临依赖于一种特定工具的风险。如果你发现自己需要一个代码生成工具,也要考虑你可能存在语言异味,或者没有消除足够的重复。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接