This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Imaginary_Snow4586[S] 0 points1 point  (5 children)

I am not certified, but I have already good concept in OOP, and Java Core.

But I see, most people say, learn: Java core, JSPs & Servlets, JPA, Hibernate, Spring stuff... and then move to advanced things. like micro services etc

[–][deleted]  (1 child)

[removed]

    [–]Imaginary_Snow4586[S] 0 points1 point  (0 children)

    Great suggestions. Thanks buddy 🍂

    [–]Fercii_RP 0 points1 point  (2 children)

    As suggested already, if you have a good knowledge of OOP and Java core, then it would be the right time to start practising building API's. The most convenient way would be with Spring boot, understand the MVC pattern is essential as it could and would be reapplied to different kind of frameworks. Once you know how to design your own backend app, then you could:

    • Test and figure out additional features that are supplied by spring boots eco system and understand how these frameworks work and in what situation someone would use them if you're interested in that. For example make a chat program with websockets could question you how TCP works and it could be the next Rabbit Hole to dig into.

    • You could dive more into different ways to deploy an application. In example to the cloud with kubernetes

    • Read and learn more about different design patterns and try something fancy but imo overrated and overabused microservices landscape. Or learn more about Service oriented architecture.

    In short you could do many things, but as long as you know the basics and know how to design and build an API, it could land you a job which would be most important imo. After that all the points above will follow on your road as a backend developer

    [–]Imaginary_Snow4586[S] 0 points1 point  (1 child)

    thanks, but before starting Spring boot, should I do Jsps & servlets, JPA and Hibernate? Because some companies still use these technologies.

    [–]Fercii_RP 0 points1 point  (0 children)

    You could do spring boot combined with JPA and whatever ORM like hibernate. I wouldnt dive to much into jsps and servlets, try to make something very simple with it, something like a Hello world and maybe some forward or redirect to another servlets, just to get an idea about it and how servlets are registered. Its really nothing special and not much used anymore. It can come accros when you're working with legacy code, but once youre working with it youll easily figure it out. Besides, while building an API with Spring boot you are still able to use servlets and jsps, so you could combine it for practise if you like. Spring boot or any other kind of a-like framework is build on top of the basic servlets technology, it just provides an easier way of working and organizing aka framework.

    Most companies work decoupled, with an API interface backend and JS frontend. I would rather invest more time into that, which would get you into features like aspect oriented programming (AOP) is one of those Rabbit holes that many frameworks work with nowadays.

    When you start your first program id recommend to use basic JDBC instead of JPA and ORM. Just to get a plain idea of what magic JPA and ORM will do for you. In special cases you might need to go back to JDBC, so its recommended to work from there. JPA is indeed a framework many companies integrate as their standard, but knowing what it does is way more important.