Would you recommend courses, books, documentation, or jumping straight to a project and googling things along the way? I have a solid foundation of Java and want to start learning how to develop web apps with it.

Any help much appreciated

  • homoludens@feddit.de
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    As someone who needs to understand the concepts first (instead of simply learning by doing), the guides by Marco Behler really helped. And the official documentation is great too!

  • chillybones@beehaw.org
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Trial by fire. We were in the infancy stages of a project and the alternative OTS options were really bad for our use case. We had a project manager that really believed in our group and pointed us to the Spring framework as one they had used in the past to solve a number of the same issues we were facing at the time. I had mainly worked in very heavy custom Java environments (no frameworks, and very few third-party dependencies) so dropping into a Framework with actual rules/guidelines was so nice and I’m currently noodling out how to rewrite some of our legacy apps in Spring because of how much it slots into our workflows.

    I don’t love programming books and find them very hard to follow, so I leaned heavily on Baeldung and StackOverflow for most of my questions. Like some of the other comments in this thread, I had a hard time understanding dependency injection since I had no prior experience with it, but man-oh-man is it useful.

  • reversebananimals@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    I was forced to use it because its the default web server framework at my mega-corp. I’ve been using it for almost 7 years now, and I think one of the reasons Spring is popular is because you can pick it up pretty easily if you’ve got an existing app with some examples to work in.

    I think the only three core concepts you have to understand for Spring to make sense are (1) MVC architecture, (2) server-side templating and (3) dependency injection. If you have a reasonable idea of how these things work, you can muddle your way through the rest.

  • pinkpatrol@anarch.is
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    If you aren’t familiar with dependency injection, that could prove a hurdle. Same for webflux/reactor. I would avoid using webflux until you feel more familiar with non-reactive spring. Otherwise it will feel overwhelming.

  • EinfachUnersetzlich@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I ended up working for a company which had a large Spring project and learnt by working on that. It didn’t seem too hard once I got my head around autowiring.

    That was ten years ago, still using XML configuration files, and once I started working on projects with annotations instead things became a lot easier.

    • nlm@beehaw.org
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Same here. Went straight from University to working with Spring and learning by doing. By now you can actually use ChatGPT as a nice little mentor as well. It’s decent at explaining how things work if you don’t want to google everything.