top / index / prev / next / target / source
日記形式でつづる いがぴょんコラム ウェブページです。
クラスの定義をExcelシートでおこなうと、Java/C#クラス・ソースコードの自動生成ができるツールを検討中です。
クラスの定義をExcelシートでおこなうと、Java/C#クラス・ソースコードの自動生成ができるという blancoClassというツールを検討中です。
意外と思われるかも知れませんが、既存の blanco Frameworkツール群が ごく普通に利用する共通機能としてまず有益であると考えます。あるいは業務を落とし込むときの拠り所としての様式および開発規約の具現化ツールとしても、場面場面によって結構使い勝手があるのではないかと私は想像しています。(blancoValueObjectなどのベースツールとしても活躍の場がありそうです。)
いまのところは、下記の 3シートから構成されることを想定しています。
クラス定義書
Interfaceおよび抽象クラスを選択 (両方選択も可能)
パッケージ指定
親クラス
親インタフェース
クラス名
クラス説明
クラスフィールド定義書
変数・定数の選択
アクセス指定
ゲッターおよびセッターを選択 (両方選択も可能)
所属クラス名
フィールド説明
進捗メソッド : progress(int current, int total, String message) の生成のON/OFF
クラスメソッド処理定義書
static指定 (言語仕様的に可能かどうかの調査が必要)
アクセス指定
入力パラメータ指定 (原則 ValueObjectを指定)
出力パラメータ指定 (原則 ValueObjectを指定)
※様式のイメージとしては 現状の電文処理定義書 (blancoSOAP) の様式に似たものになると考えています。
これらシートを組み合わせることによりクラスの基本的な情報が揃います。(あるいはツールの出力が これらシートになるのでも良いです) そこから インタフェースまたは抽象クラスの自動生成をおこなうことができます。自動生成が終わった後は、ジェネレーションギャップ・デザインパターンを用いて普通に手動にて開発を行っていくことができます。
自動生成により、ゲッター・セッターといったものが自動生成側のソースコードに隠蔽化させることができるだけでも、私としては幸せな感じが得られるような気がしています。そしてなによりも素晴らしいことは、このツールを導入することによりドキュメントが必ず作成されるようになり、またドキュメントと実装とが乖離する可能性がほとんど無くなるということです。