Author :/fancyhf
在Rational Architect中MDA过程是
通过工具本身建立设计Model中间可以用pattern来优化设计
然后根据自己的架构开发符合Rational Architect要求的转换插件把模型转换为代码模型也可以把模型转换为代码
可以反向
而在open source里
通过ArgoUml设计模型
通过ArgoEcore转换为xmi
基于Merlin开发自己的代码模板或插件
把模型转换为符合自己框架的代码
如果自定义@Generator可能可以反向但比较麻烦
之前一般通过xDoclet之类来生成代码但是很难反向也不能从模型生成
现在也用Java 的Annoation一样不好反向
最好的方式应该是根据模型按照代码模板生成代码并且可以反向
Rational Architect 和 Eclipse是同源的基础结构一样Rational Architect多一些插件
其MDA部分极其接近核心的是EMFumlJDTplugin共同的是xmi不同的是具体代码生成Architect有xtool的api而eclipse中可以用open souce的插件如MerlinArgoEcore
所以基本的MDA理论必须的Eclpise开发平台的Framework和plugin是必须掌握的Emfuml等也必定要然后分开在Rational Architect中和Melrin等实现转换(mmmc)只是一难一易
所以Eclpise和JbuilderIBM和Sun比的不是别的是工具和语言
Eclipse的野心是基础性开发平台然后可以开发丰富的插件是一个open的世界人人可参与
而sun 的java是语言是一个标准本身也是因为开放性所以集全世界的自由开发人员的意志发展
而微软则是自成体系虽然强大但人们少了自由就有了抱怨虽然操作系统是成功垄断但应用系统人们会选择java来平衡
现在java的世界多了Eclpise从工具的角度又多了open和人们的自由和创造
相比Jbuilder就像微软我很全也很好但是没有更多的自由激发不了更多的创意
Java世界和微软比是独裁和民主约束和自由遵守和创造的区别
就象一个世界一个社会民主和自由导致更多追随着进步