1

一般に、EMF モデルに動作を追加することに人々がどのように対処しているのか疑問に思っています。特定のタイプの物理ファイル (IDE のプロジェクト ファイルですが、詳細は重要ではありません) を表すモデルがあり、モデルには計算された属性 (このファイルを外部ツールに渡した結果など) が含まれています。これには、生成されたモデル クラスのサブクラス化編集という2 つの方法があります。

私はこの特定の問題を解決することにあまり興味がありません (さまざまな方法で解決できます)。他の EMF ユーザーがこの問題に一般的にどのように取り組んでいるかを知ることです。

4

2 に答える 2

1

私も同じような問題を抱えていて、何人かのモデリング担当者や Ed Merks と話しました。

一般的なアプローチは、可能なすべてのタイプを静的に作成し、変更せずに使用することです。動的モデル (つまり、実行時に変化する EMF モデル) はあまり一般的ではないため、それらを実装する最善の方法についての知識はあまりありません。

直面するいくつかの問題: ランタイム モデル クラスの読み込みと保存。モデルを再度ロードするときは、モデル クラスが少なくとも同じ属性を持っていることを確認してください。

これは通常、モデル自体とともに EMF メタ モデルを保存する必要があることを意味します。

サブクラス化と編集について: EMF は一種のリフレクションのような API と考えてください。これは実際には、Java クラスを記述し、インスタンスを作成し、それらのインスタンスを変更して永続化する API にすぎません。

したがって、どちらの方法が優れているかを判断する必要がある場合は、EMF を使用せずに (つまり、リフレクションを使用する場合はプレーンな Java で) どのように解決するかを自問してください。

于 2011-06-06T08:59:58.317 に答える