Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
Hazarth95214yJava + Spring boot + Hibernate + JPA + Swagger + Lombok.
If you start your project with those, you can pretty much build a backend for a pretty complex project in less than 2k lines *total*. Especially with proper mastery of all the modules and the annotation power Spring and it's modules expose.
I have a decent amount of experience with these and more, and on a recent interview I was asked to create a backend for an application as an example, had like a week for it or so?
I managed to check off all the requirements, even optional requirements, done it in 2 days, and on later interview the interviewer even commented, that there's not a lot of code to actually comment on.... to which I said "yeah, don't re-invent the wheel, I used spring efficiently to deliver on the requirements, that's all."
They clearly wanted to judge my code more and were disappointed by this xD but still took me, because you can't argue with it either -
I don't event know JPA, Hibernate and Lombok lol. And also that I need to study lots of related Java + Spring Boot technologies like that.
So I think I will become a Java + Spring Boot guy in the future coming from PHP and Javascript (React + Angular) -
Hazarth95214y@Devnergy
Don't worry about it, Hibernate and JPA are essentially just db agnostic layers over a database. You should definitely start learning the basics of these, since they can speed up creating queries and models by a ton.
Lombok is a boilerplate generated using annotations, it's not even a spring module but an annotation processor plugin on top of your IDE, that will generate tons of boilerplate for you! This one is almost a must for any Java project, not just Spring projects.
another pretty useful boilerplate remover is MapStruct that you can use to map between DTOs and Entities, just keep that in mind for the future, you don't need to know this right now.
I definitely whole heartedly recommend spring-boot for robust backend applications. Even though it's on the heavy side, it does a lot of things really well in my opinion, and you can learn a lot fast with it too! -
brittle204yThen just use kotlin + spring boot if you dont like java's verbosity
And like mentioned elsewhere, lombok is your friend in java.
But really, its not that bad, spring provides so many features and has sensible defaults in most cases. The only thing id complain about is the startup time of jvm+spring.
Sure java is more explicit and has fewer shorthands than some languages but spring is probably the best framework ive ever seen for any language.
I want to study Java + Spring Boot but I hate the long syntaxes and boilerplate codes. Too many codes to do simple things turns me off.
rant