過去記事をリニューアル配信していく自分企画を始めました。
最初は Java でのプリプロセッサについて。
みなさん Java で開発するとき プリプロセッサ は何を使ってますか?
C/C++ で開発をしてきた人は、プリプロセス処理を使ってたかと思うのですが、
Javaコンパイラには プリプロセッサは無い のです。
無いなら「フリーソフトを使えば良い」ということで、いくつかのツールが
あるのでご紹介します。
紹介するのは コピーが自由な( ライセンス違反にならない )ソフトを中心に、
利用規約で個人・法人、商用利用に制限が定められていないソフトです。
ライセンス規約が厳しいのは「評価項目」に記載していますので、仕事で使うか、
趣味で使うか、プロジェクト全員で使うか等、用途に合わせて選択してください。
ソフト名 | 概要 | 評価 | 現代評価 |
PPP | ・携帯Java等では 503 の開発の時からよく利用されている。書籍などにも紹介されたツール。 [最終更新] 2002年11月 | ・ソースコードが 5000行を越した辺りから、環境によっては激しく重い。 ・趣味として使う程度のものならば実用的。 携帯アプリ開発として考えると、 ソースコード も 505 までの時代とは違い コード量が多いので最近は実用に耐えなくなってきている感がある。 | ☆☆ |
JavaPP | Java 用に開発されたプリプロセス。 [最終更新] 2004年10月 | ・バージョン 2.0 系にはとんでもないバグがあるので、1.3 を使用する必要がある。 ・処理速度は ppp とは比較にならないぐらい高速。 ・enum をサポートしていないのはちょっと辛い ( enum のみ変換するツールを 作って組み合わせれば実用的 ) | ☆☆☆ |
fpp | Java 用に開発されたプリプロセス。 [最終更新] 2011年8月 | ・PPP と JavaPP の後に誕生。 ・プリプロセッサとしての双方の良い所を引き継き変換速度を最重視しているソフト ・Java5 以降にも対応。 | ☆☆☆☆ |
pp_inc | Java 用に開発されたプリプロセス。 [最終更新] 2005年11月 | ・PPP と JavaPP を越えたソフト。 ・Java5 以降のアノテーションに対応していないので @override などがあると コンパイルが通らなくなるので Android には向いていない。 | ☆☆☆☆ |
cpp32 | Cコンパイラ | ・完璧なプリプロセッサ ( 但し商用利用は不可なので企業では使えない。もし無料版を企業で使っていたら規約違反。密告により損害賠償も… ) | ☆☆☆ |
cygwin/gcc | Cコンパイラ | ・完璧なプリプロセッサ ・ソースの拡張子は C/C++ 必須。 ・cygwin環境の構築が必須。 | ☆☆☆☆ |
VisualStudio | Cコンパイラ | ・完璧なプリプロセッサ ・無料版もあるので、各マシンにインストールすれば構築可能。 ただし無料版でも第三者に exe を譲渡・ コピー するのはNGなのでプロジェクト 単位で導入する場合は、全員が VisualStudio を正規にインストールする 必要あり。 | ☆☆☆☆ |
「☆マーク」の評価は、導入難易度、利用規約、ソフトの完成度、ソフトの速度、
他アプリケーションへの依存度などを総合評価し、判断しました。
以上 Java でのプリプロセッサ紹介でした。
0 コメント:
コメントを投稿