Могу ли я использовать внутреннюю структуру данных Eclipse-EMF? - PullRequest
0 голосов
/ 16 сентября 2011

В EMF пользователь может нарисовать диаграмму UML, и эту модель UML можно преобразовать в код Java. Насколько я знаю, у EMF есть собственная внутренняя структура данных для захвата пользовательских рисунков модели UML. И что я хочу сделать, так это создать UML-модель путем кодирования, а не рисования, то есть с использованием внутренней структуры данных EMF, представляющей метамодель UML (Class, Package, Attribute и т. Д.). Мол,

UmlClass myClass = new UmlClass();
UmlAttribute myAttr = new UmlAttribute();
myClass.addAttribute(myAttr);

Возможно ли это (даже ЭДС)? В любом случае, я хочу использовать надежную структуру данных, которая точно отражает стандартную спецификацию UML OMG.

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 23 сентября 2011

EMF - это среда моделирования, предназначенная для поддержки моделирования в целом, а не только UML.

Если вам нужен именно UML, то действительно есть такая реализация, построенная поверх EMF. Проверьте UML2 .

0 голосов
/ 22 сентября 2011

Нет классов, точно отражающих спецификацию OMG, но EMF ECore - это метамодель для моделей.Поэтому вы можете делать то, что вы хотите, используя EMF ECore.Есть много документов на http://www.eclipse.org/modeling/emf/docs/#overviews и отличная книга.Ссылка имеет изображение и ссылку на книгу.

Пример:

EcoreFactory ecoreFactory = EcoreFactory.eINSTANCE;
EClass myClass = ecoreFactory.createEClass();
myClass.setName("MyClass");
EAttribute myAttr = ECoreFactory.createEAttribute();
myAttr.setName("myAttr");
myAttr.setEType(EcorePackage.Literals.ESTRING);
myClass.getEStructuralFeatures().add(myAttr);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...