So far I have worked on many different projects, seeing many different approaches to modern web application development including among others:
Thymeleaf, Freemarker, ZK, Angular2, Vue.js, React and Vaadin
to facilitate rendering of a UI. Obviously, there are always advantages and disadvantages and different paradigms involved.
With all the advantages that do exist with modern js frameworks, it also almost always feels like a lot of bloat and overhead to me to work with these frameworks.
More recently, I did work with Vaadin, and as a Java developer at heart, I rarely felt that much „at home“ for creating a UI.
I have to admit, it is still quite handy to know your js and css for special behaviours and edge cases, but something in me just loves working with Vaadin.
So now we can talk a lot about Performance and stuff, but Vaadin‘s simplistic approach is imho very much appealing to people who Like Java.
It might not be the best fit for everything, but it can surely get you far, and it seems that indeed quite a few companies are leveraging its advantages.
I am curious, anyone else with a positive opinion about Vaadin out there?
Best
My company uses it for a couple of “legacy” applications. Though all new applications are on Angular.
I think the shift was because of the complexity of the project. In my company, Java devs were busy implementing core business logic, batch jobs, fixing production issues or enhancements. So they didn’t have enough bandwidth for UI maintenance and enhancement. Plus when it came to that, most UI developers you could find in the job market were JS/CSS guys.
So management made a decision to shift to Angular for UI and Java for back end work. Delineating both as separate concerns.
However I do think that having Java teams for both UI and back end might be more agile. But realistically I think it depends on the circumstances.
Haven’t used it, didn’t know it existed, but I want to check it out now
Please try it. It certainly is interesting. And it has been around for a while which is a good sign.
Again, I tried „Vaadin Flow“ (conceptually similar to C# Blazor) and it is fun. I built a productive solution with it (wo pro) that is integrated with Spring Boot.
Same. I’m a Java developer at heart with extensive JS/CSS experience. This sounds at least worth checking out.
Personally I hate fighting with CSS and JS is…a language? No further comment. So having something that lets me avoid them for the most part sounds very appealing