ビルド サーバーからの自動ボックス化およびボックス化解除にフラグを付けるスタイル チェッカーまたはビルド ツールを知っている人はいますか?
私はすでに日食オプションを持っていますが、プロジェクトの全員が同じ IDE または同じ設定を使用しているわけではありません。ビルド側でそれを見つけることが、プロジェクトに侵入する可能性がある場所を検出する唯一の方法のようです。
ビルド サーバーからの自動ボックス化およびボックス化解除にフラグを付けるスタイル チェッカーまたはビルド ツールを知っている人はいますか?
私はすでに日食オプションを持っていますが、プロジェクトの全員が同じ IDE または同じ設定を使用しているわけではありません。ビルド側でそれを見つけることが、プロジェクトに侵入する可能性がある場所を検出する唯一の方法のようです。
Findbugsは、潜在的に問題のあるボクシングの問題の多くの特定のケースを識別します。1つの例に直接リンクしましたが、そのページの「ボックス」をCtrl-Fで押すと、残りの部分を簡単に見つけることができます。私は特定のボクシングの問題を探すことはすべての大規模なフラグを立てるよりも良いと思います。(言い換えれば、私は280Z28に同意します)
Eclipseを使用している場合は、「設定」を表示して、「Java」-「コンパイラー」-「エラー/警告」に移動します。オプションの1つである「潜在的なプログラミングの問題」セクションで、警告またはエラーとして自動ボクシング/アンボクシングをオンにすることができます。この静的分析は、プロファイラーと一緒に使用すると非常に便利です。
280z28で述べたように、非常に頻繁に呼び出され、パフォーマンスに影響を与える自動ボクシング/アンボクシングのケースを検出するツールがある方がよいでしょう。しかし、私はそのようなツールを知りません。
より優れたツールは、プロファイラーがボクシングのために遅いことを証明するコード パスの自動ボクシングを強調表示するツールです。明示的なボックス化を強制することは、ガベージ コレクションを回避するようなものです。エッジ ケースでは遅くなる可能性があるからです。ツールに仕事をさせましょう。実際に取り組んでいる問題を表現するのはコンパイラと言語であり、パフォーマンスの問題を把握するのはプロファイラです。明示的なボクシングは、問題を解決するという文脈では不自然です。なぜなら、解決策の説明の一部ではない言葉のニュアンスが示されるからです。
編集: このタイプの解説はここで適切ですか? 私は実際に役に立ちたいと思っています。実際、過去に、box
ホット パス上の CLI オペコードのインスタンスを特定するツールについて具体的に考えたことがあります。