2011-06-19 41 views
6

我很抱歉,這看起來可能太簡單了,但我對Eclipse Modeling Framework的含義模糊不清?什麼是Eclipse建模框架?

基於他們的網站,它基於XML規範生成Java代碼。
我不知道它是否像Visual Paradigm? 它是否生成其他語言(如PHP)的代碼或僅用於Java?

謝謝。

回答

6

EMF是一個框架,可以採用模型(如.ecore文件中所述)並生成可與EMF一起使用的支持Java文件,以構建,加載,操作和保存該模型的實例。

這意味着您在編寫Java應用程序時需要使用EMF,並且需要操作模型(語言的抽象語法樹,可以通過視圖顯示的模型,需要操作的域等)。

有很多建模項目,它們增加了對越來越多功能的支持,但其中大部分都基於EMF。

3

基本上,EMF是開發模型驅動開發(MDD)工具的框架。

您將感興趣的工具在Model To Text (M2T)部分。使用像JET這樣的工具,您可以使用任何您想要的語言生成包含邏輯的業務對象,而不僅僅是簡單的DTO。您可以從您自己定義的域特定語言(DSL)(通常以XML格式)或標準建模語言(UMLEncore)生成代碼。

當您選擇建模語言時,可以使用圖形工具構建模型(GMF)。另外,EMF擁有您所期望的驗證/翻譯工具。

已經嘗試了幾種代碼生成工具,我可以說這是一個有價值的實驗。但是,它需要大量投資才能學習,並使您面臨依賴於某個特定工具的風險。如果你發現自己想要一個代碼生成工具,也可以考慮你可能有一個language smell或沒有重構足夠的重複。