Open TokiNoviceProgrammer opened 3 months ago
Spring Boot開発におけるプログラミングレベルでのチェックリストを以下にまとめます。これらのポイントに従うことで、コードの健全性と保守性を向上させることができます。
final
camelCase
private
getter
setter
@Override
null
Optional
@NonNull
@Nullable
@Autowired
@Scope
Collections.unmodifiableList()
List.of()
@Transactional
@Service
@Component
@Repository
TODO
このチェックリストに沿ってコードをレビューすることで、プログラムの保守性、可読性、信頼性を高めることができます。
Spring Boot開発におけるプログラミングレベルでのチェックリストを以下にまとめます。これらのポイントに従うことで、コードの健全性と保守性を向上させることができます。
1. コンストラクタインジェクション
final
の使用: コンストラクタインジェクションで利用する依存オブジェクトには、final
修飾子を付けること。これにより、依存オブジェクトが不変であることを保証し、スレッドセーフ性が向上する。2. フィールドの命名とスコープ
camelCase
)に従うこと。private
とし、必要に応じてgetter
やsetter
を使用してアクセスを制御する。3. メソッドの設計
@Override
の使用: 親クラスやインターフェースのメソッドをオーバーライドする際には、必ず@Override
アノテーションを使用する。4. 例外処理
5.
null
の取り扱いnull
チェック: メソッドの引数やフィールドがnull
である可能性がある場合は、適切なチェックを行う。また、Optional
を使用してnull
の取り扱いを明示的にする。@NonNull
と@Nullable
の使用:null
を許容するかどうかを明確にするために、@NonNull
や@Nullable
アノテーションを使用する。6. 依存関係の管理
@Autowired
の使用制限: フィールドインジェクションではなく、可能な限りコンストラクタインジェクションを使用する。@Autowired
は必要最小限に留める。@Scope
アノテーションでスコープを明示する。7. コレクションとストリームAPI
Collections.unmodifiableList()
やList.of()
などを使用する。8. アノテーションの適切な使用
@Transactional
の範囲: トランザクションの境界が適切に設定されているか確認する。@Service
,@Component
,@Repository
の使用: 適切なアノテーションを使ってクラスの役割を明確にする。9. ユニットテスト
10. ドキュメントとコメント
TODO
コメントは必要最小限にし、後で解決するべき課題はチケット管理システムに記録する。このチェックリストに沿ってコードをレビューすることで、プログラムの保守性、可読性、信頼性を高めることができます。