モデリング言語をJavaに設定する
astah*では、モデリング対象言語の設定(Java、C++、C#)が可能です。
モデリングの対象言語がJavaの場合は、プロジェクト作成時にそう設定しましょう。
設定することで、Java固有のプロパティ設定などが可能になります。
- プロジェクトのプロパティのプロジェクトの設定でJavaにチェックを入れます
- 確認ダイアログが開くので、[はい]を押します
- これで、クラスや属性、操作の言語タブのオプションが有効になりました

Javaソースコードを読み込む
.javaファイルを読み込み、そのクラスと親パッケージをプロジェクトに生成します。
- [ツール] - [Java] - [Javaソースコードの読み込み]を選択します。
- [Javaソースコードの読み込み]ダイアログが開きます。
ここでインポート対象のjavaファイルを指定します。
まず左のツリー上でディレクトリを選択します。すると中央の[候補リスト]に、選択したディレクト内のjavaファイルが表示されるので、ここからインポートしたいjavaファイルを選択、矢印ボタンを押して[選択リスト]に移動します。
その後、必要に応じてファイル入力時の文字コードを指定してから[了解]ボタンを押します。 - 関連にしたい属性をチェックします
- 読み込み完了のダイアログが表示されるのでcloseを押します。
- モデルがリバースされて、構造ツリーに表示されました。
Javaコードに変更を加えて再度読み込みを行った場合
-
属性や操作に変更を加えた場合
可視性、返り値、名前を編集した際は、[Javaソースコードの読み込み]でマージされ、モデルに反映されます。 -
クラスの名前を変更した場合
[Javaソースコードの読み込み]では、別のクラスとして認識されるため、属性・操作の内容が同一の新しいクラスが生成されます。
例)Javaコードにて Class0の名前を Class1に変更した場合、読み込み後は同じ内容の属性・操作を持つ Class0、Class1が存在します。 -
クラスを削除した場合
[Javaソースコードの読み込み]を実行しても、コード上で削除したクラスが削除されることはありません。ご自身でモデルからクラスを削除する必要があります。
読み込んだモデルで図を自動生成する
インポートしたモデルのクラス図を自動生成します。
構造ツリー上で、パッケージ(モデル・サブシステム)のポップアップメニューから[クラス図を自動作成]を選択します。作成オプションは3つあります。
- 概略 → 属性/操作を表示せずに図を作成します
- 詳細 → 属性/操作を表示して図を作成します
- サブパッケージを展開 → 配下のパッケージ内のモデルを表示して図を作成します
1. 概略
属性/操作を表示しないクラス図が生成されます。

2. 詳細
属性/操作を含めたクラス図が生成されます。


3. サブパッケージを展開
選択したパッケージ配下のパッケージ内のモデルを含めてクラス図を作成します。

リバースプラグインを使う
Javaソースコードの読み込みであれば、無償の簡単コードプラグインも使えます。
このプラグインを使えば、GithubやBitbucket、Google Project Hosting等のリポジトリサービスや、ローカルにあるJavaソースコードを図上にドラッグするだけで、簡単にモデルをリバースできます。
- プラグインをインストールします
- Github上の.javaを、クラス図上にドラッグします
- クラスが生成されて図上に表示されます
Javaスケルトンコードを生成する
作成したモデルからJavaスケルトンコードを作成します。
クラスや操作の定義は、ドキュメンテーションコメントとして出力します。
上書きで出力する時は、メソッドのボディブロック等を残すように上書きします。
- [ツール] - [Java] - [Javaスケルトンコードの作成]を選択します。
- 出力対象のモデルを選択します。必要に応じてコメント出力オプション
文字コードを指定します。
- スケルトンコードが生成されました。
例: 下図のMonitor.javaの生成コード

