When you’re starting a new project and you haven’t had massive amounts of experience with any singular language or framework, picking a framework is usually a sticking point. A lot of people get “analysis paralysis” trying too hard to pick the right tool for the job, when in fact, they should just go ahead and pick one and get started! A lot of frameworks are “horses for courses” and all have their advantages and disadvantages. Spring Boot is a good one to learn, it is massively used in a huge variety of organisations if you were planning to use it professionally and has great community support!
It’s Java!
First and foremost, Spring Boot would be an obvious choice for anyone that is comfortable or wanting to work with Java. The Spring Boot developers do a pretty good job of keeping up with the latest Java versions too, so you’re never far behind using all the fancy new features!
It’s also worth pointing out that, despite it repeatedly being described as a dying or outdated language, it’s still one of the most popular languages out there, so if you’re thinking of learning Spring Boot, or more broadly Java, you’ve still got plenty to aim for!
Classes and methods are decorated with annotations allowing a lot of configuration to be done in code, saving time messing around with loads of configuration files as you used to in the old Spring ways. Who wants to use XML when we can just do it when we’re coding?
The Documentation
Spring Boot have tons and tons of documentation outlining most parts you could ever need. If they don’t have it, chances are there’s someone around that has gone to the effort of outlining whatever you need, whether it be on StackOverflow, various blogs or here 😉
They also have full guides/tutorials giving you a full walkthrough of how to implement anything from a REST API to a full test plan.
It doesn’t stop there either! All you have to do is type “<project idea> spring boot” into GitHub and there will be numerous projects which can serve as a good reference, it’s incredibly popular!
The “Initializr”
The good guys at Spring Boot have made spinning up a project, with all the dependencies you could possibly need, incredibly easy.
They’ve created a Web page where you can give your project a name and description, pick your dependencies and it’s ready to download to import into your IDE! This is great because it lets you get started quickly, with a project containing a massive amount of features, or just stripped back to the bare essentials.
Gone are the days of creating Maven artifacts or even going back to creating source files manually! I’m fortunate enough to have joined the Java ecosystem a long time after them days, thankfully!
The Initializr also allows you to choose your variation of Java, you can go for Kotlin or Groovy if they’re more your thing. Kotlin will be good for those coming over from an Android development background and I personally don’t like Groovy as much, but do whatever makes you happy, at least the option is there! You can also specify your build tool; Maven or Gradle, your Spring Boot version (which gives the option of SNAPSHOT versions too, so you can test out any new features), Java version and even how you would like your project to be packaged when compiled and built!
Summary
Ultimately, the decision of whether you should use Spring Boot for your next project comes down to whether you’re comfortable with Java. If you are, it’s a no brainer! However, it’s always worth doing some quick research to make sure that it is what you want to use. It definitely gets my recommendation due to the support available as well as the widespread use in a professional setting.
Give it a go and let us know what you think. We’re happy to answer any questions you might have!