我正在构建一个用于操作图形元素的编辑器,每个元素必须代表 API 规范中的一种元素。
API的元素基本上是一些类和接口,它们有一定的使用限制,比如元素A不能是元素B的子元素,或者不能与元素C连接等等……
编辑器应该允许您根据绘制的内容生成代码,并且生成的代码必须是与您绘制的内容相对应的 API 的实现。
我(在实践中)对模型驱动架构以及如何从图形模型生成代码到某些实现一无所知。
我不想将图形模型(包含大小和坐标等图形信息)与实现 API 规范的业务模型混合。
我正在使用 eclipse GEF 来构建编辑器,这是我面临的问题:
由于图形模型和业务模型是分开的,我正在考虑定义一个 emf 模型,编辑器将是该 emf 模型的编辑器。那么是否可以将编辑器中绘制的模型(使用 emf 模型作为基本构造元素)转换为 API 规范的相应实现?
我知道,因为图形模型和业务模型是分开的,所以我必须实现某种语法分离,使用限制非常适合我想做的事情(谈到代码生成和语法)或者我应该使用xtext ?
什么 Eclipse 框架工具可以帮助我做我想做的事?