Conclusion: Assembling the Application

Let's recap the different ways you can assemble your application and how assembling your application can help you write maintainable software.

How does this help me build maintainable software?

Spring and Spring Boot (and similar frameworks) provide a lot of features that make our lives easier. One of the main features is assembling the application out of the parts (classes) that we, as application developers, provide.

Classpath scanning is a very convenient feature. We only have to point Spring to a package, and it assembles an application from the classes it finds. This allows for rapid development, with us not having to think about the application as a whole.

Once the codebase grows, however, this quickly leads to a lack of transparency. We don’t know exactly which beans are loaded into the application context. Also, we cannot easily start-up isolated parts of the application context to use in tests.

Get hands-on with 1200+ tech skills courses.