3

シナリオ

私はEclipseでゼロから構築されたJavaモデルを扱っています。このモデルで重要なことは、出力を MATLAB (.mat) ファイルに保存することです。私は常に新しい機能を追加していますが、新しいフィールドを必要とするため、反復ごとに .mat ファイルにエクスポートする必要があります。クラッシュしたシミュレーションを再開すると、.mat ファイルをインポートする必要がある場合があります。.mat ファイルをエクスポートまたはインポートするには、JMatIOを使用します。

たとえば、クラス CModel に新しいフィールドrho_m(シンプルな) を追加する場合、Save() メソッドに追加する必要があります。double

mlModel.setField("rho_m", new MLDouble(null, new double[] {rho_m}, 1));

そして私の Load() メソッドに:

rho_m = ((MLDouble)mlModel.getField("rho_m")).getReal(0);

であっても、JMatIO ではとして扱う必要があることにrho_m注意してください。これはおそらく、MATLAB が行列と行列演算に向けられていることに関係しています。doubledouble[]

問題

これを手動で行う代わりに (エラーが発生しやすく、保守が煩わしい)、この手順を自動化したいと考えています。理想的には、IDE が CModel のすべてのフィールドを検出し、フィールドの名前と型に基づいてコードを記述できるようにしたいと考えています。Java/Eclipse でこれを行う方法はありますか?

これまでのアイデア

私は低レベルのプログラミング言語の正式なトレーニングを受けておらず (そうです、Java は私にとって低レベルです)、Java はまだ比較的新しいものです。MATLAB の使用経験はあります。MATLAB では、 for ループでeval()andを使用して、私が言及したことを実行できると思います。fieldnames()私の最後の手段は、Java コードを MATLAB にコピー アンド ペーストし、そこから巨大で醜いスクリプトを使用してコードを生成することです。モデルを変更するたびに、MATLAB スクリプトを再実行していました。

その考えに加えて、UML のような用語を見つけましたが、これが私が探しているものかどうかを判断するための背景知識がありません。

正しい方向へのほんの少しのプッシュであっても、どんな助けも大歓迎です。さらに明確にする必要がある場合はお知らせください。

4

1 に答える 1