Eric Lafortune氏は27日(米国時間)、ProGuardの最新版となる「ProGuard 4.0」を公開した。ProGuardはJavaで開発されたクラスファイル最適化ツール。クラスファイルに対して縮小化、最適化、難読化、事前検証などを実施する。プロダクトはGNU GENERAL PUBLIC LICENSE Version 2のもとで公開されている。
ProGuardを使うことでクラス名、フィールド名、メソッド名などを短くて意味がない文字列に変更、つまりクラスファイルの難読化を実現する。また使われていないクラス、フィールド、メソッド、属性を発見して削除できるほか、バイトコードの最適化、使われていないインストラクションの削除なども実現できる。バイトコードの最小化や実行の最適化などにも活用できる。さらにJava 6やJava Micro Editionなどむけにコードの事前検証ができるという特徴もある。
ProGuard 4.0はすべてのオリジナルコードが書き換えられたマイルストーンリリース。アプリケーション名はこれまで同様ProGuardのままだが、実質的に大幅なバージョンアップとみていい。多くのバイトコード最適化機能が実現されたほか、事前検証機能が追加されたのもこの4.0からとなる。
ProGuardにはいくつもの特徴があるが、通常この手のツールは難読化ツールと呼ばれることが多い。しかしながらProGuardは難読化以外にも事前検証機能を持ったことから難読化ツールという呼び方は適切ではなくなりつつある。クラスファイル最適化ツールという呼び方がより適切だろう。Javaはバイトコードが可逆的であることからソースコードの隠蔽が難しい。商用プロダクトの場合、ソースコードにノウハウがつまっていたり契約上公開できない情報が含まれていることがある。こうした場合にはProGuardのような難読化ツールが役立つことになる。
ProGuardが最も効果を発揮する場面は、クラスファイルの最小化と最適化だ。Javaアプリケーション配布物のサイズを軽減させたい場合、ProGuardを検討してみるといいだろう。特に4.0からは最適化機能も強化され活用が期待できる。以前のバージョンはNetBeans IDEのデフォルト難読化ツールとなっているが、NetBeans IDE 6.0のリリースまでにProGuard 4.0が同梱されることになるのではないかとみられる。
| Javaクラスファイルを縮小/難読化する - ProGuard 3.3公開 [2005/6/23] |
| 理研、脳・脊髄形成に必要な神経板湾曲の仕組みを解明 [20:16 5/25] |
| 京大、「慢性閉塞性肺疾患」患者の労作時呼吸困難は鍼治療が有効と実証 [20:08 5/25] |
| 120Hz SHVカメラ用イメージセンサーを使った撮像装置 - SHVフルスペック化へ [18:10 5/25] |
| 京大、視覚による物体認知は前頭前野からのトップダウン信号が重要と確認 [17:45 5/25] |
| 製品数の拡大だけでなくBCPの展開なども含めた総合力で事業の強化を図るTI [17:25 5/25] |
|
[けいおん!]大学編に続き高校編も最終回 6月で“グランドフィナーレ” [00:30 5/28] ホビー |
|
Gカップグラドル柴小聖、新作は"お尻推し"「体がどんどん絞れてきてる!」 [22:00 5/27] エンタメ |
|
【インタビュー】真木よう子 - 年齢ごとに等身大の女優になりたい [21:30 5/27] エンタメ |
|
[リアル・スティール]DVDとBDセットがオリコンとTSUTAYAで初登場首位 特別映像も公開 [21:11 5/27] エンタメ |
|
ダムエー付録のトランプは54枚全てザク!安彦も大河原も [20:57 5/27] ホビー |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。