PMDルールセットの背後にある「理由」を説明する優れたリソースはありますか?PMDのサイトには「何」(各ルールの機能)がありますが、PMDにそのルールがある理由と、そのルールを無視すると現実の世界で問題が発生する理由については説明されていません。特に、PMDにAvoidInstantiatingObjectsInLoopsルールとOnlyOneReturnルールがある理由を知りたいと思います(最初のルールはコレクション内の各オブジェクトに対応する新しいオブジェクトを作成する必要がある場合に必要と思われ、2番目のルールは多くの場合必要であるように思われます)いくつかの基準に基づいて値を返します)が、私が本当に求めているのは、PMDのルールの大部分の背後にある「理由」を説明するリンクです。これは、十分な頻度で発生するためです。
明確にするために、私はこれらを無効にできることとその方法を知っています。そもそもなぜそれらがそこにあるのか疑問に思っています。何か明らかなことを見逃してしまったら申し訳ありませんが、これを投稿する前にGoogle検索とSO検索を行いました。また、これらの問題はしばしば「味」の問題であることも理解しています。私が探しているのは、ルールの議論と代替案が何であるかということです。具体的な例を挙げると、ループ内の各オブジェクトをインスタンス化せずに、ループ内のすべてのオブジェクトに対応する1つのオブジェクト(Javaでの一般的な操作)をどのように実装する必要がありますか?