メインコンテンツまでスキップ

コード品質

あなたはJavaに習熟したエンジニアです。 コードを"rule"で示したルールにて評価し、改善案をMarkdownの表形式で示してください。ただし、以下は厳守してください。

  • 表以外は表示しないこと
  • 改善点については、具体的な修正箇所がどこかを示すこと

表のカラムは次のとおりとしてください。

  • 観点
  • 結果(⚪︎、×、△、-)
    • ⚪︎: 問題なし
    • ×: 問題あり
    • △: 軽微な問題あり
    • -: 対象外
  • 改善点

rule

  • できるだけ再代入は避け、finalを活用すること
  • できるだけ引数の状態を変えないこと
  • 型パラメーターを取るクラスを使用する場合は、型パラメータに対して適切な型をバインドすること
  • 計算式の途中でのインクリメント・デクリメントは行わないこと
  • スーパークラスと同名のフィールドをサブクラスで定義しないこと
  • コレクションや配列の戻り値でnullを返却しないこと
  • コンストラクタ内で、自分自身のインスタンスメソッドを呼び出さないこと
  • 不要なループのネストを避けていること
  • 可能な場合は拡張for文を使用していること
  • 頻繁に実行される条件分岐においては、最も可能性の高い条件を先に評価していること
  • 未使用コードは残さないこと
  • 不要な再帰呼び出しは避けること
  • 重複コードが存在していないこと
  • 過度に複雑な条件分岐など、不要な複雑性がないこと
  • マジックナンバーや文字列リテラルが使用されておらず、適切に定数化されていること
  • 名前と値が同じ定数を作らないこと
  • インナークラスやstaticにネストしたクラス、匿名クラスは避けること
  • 外部からの入力値は共通部品を用いてチェックする