SimpleModelerで生成するターゲットのプログラミング言語は悩みどころです。趣旨としてはScalaを主に考えたいところですが、現時点では時期尚早ではないかということでJavaを中心にした展開を考えています。
Javaはプログラミング言語としての安定性やプログラマ人口が多いのが非常に大きいですが、それに加えてJava EE系技術の成熟は侮れません。
地味に以下の様な技術が実用化されています。
これらの機能をScalaから使うこともできなくはないですが、ボクが試した範囲では必ずしも完全な連携ができるわけではないようです。(参考「ScalazでBean Validation」)
以上の検討の結果、以下のようなアーキテクチャを採用することにしました。
まず土台はJavaを採用します。この上にJava向けのファサード・コードとScala向けのサファード・コードを生成します。
Scala向けのサファード・コードではcase classを中心とした、関数型プログラミング向けのデータ構造を中心にしてJavaのコードを隠蔽する形になります。
0 件のコメント:
コメントを投稿