(1) Controller/Service/Repositoryに分割しているか? (2) インスタンスのライフサイクルを考慮した実装か? (3) コンストラクタ インジェクションを使っているか? (4) 共通化できる処理がないか? (5) Springが提供している機能を自前実装していないか?
1.Spring Core の基本的な機能 - DI (Dependency Injection) や BeanFactory など 2.Spring MVC の使用方法 - コントローラー、ビューなど、Webアプリケーションの開発に必要な機能 3.Spring Data の使用方法 - データベースアクセスに必要な機能 4.Spring Security の使用方法 - アプリケーションのセキュリティに必要な機能 5.Spring Boot の使用方法 - Spring Frameworkを使用したアプリケーションの開発を簡単にするための機能