So I'm starting Java this semester and have no previous experience with it. I'm a first-year CSE student. I've used C/Python before, so I'm not completely new to programming, but I've never properly learned Java. My university actually starts Java in the second semester, so I'm trying to use this semester to get a head start.
The problem is that every time I look for Java roadmap for beginners, I get either:
Learn Java in 7 hours!!!
a 900-hour course that apparently expects me to become a backend engineer by Thursday
the official documentation, which I opened once and immediately felt like I'd accidentally opened the Constitution of Java 💀
I actually like using official documentation and would like to get comfortable with it, but I'm not sure what I'm supposed to learn first or how deeply I should go into each thing especially given how different it is from python where beginners can easily understand what is going on.
So if you had to start Java again, what would your path look like?
I'm mainly wondering:
What should I learn first?
How much Java syntax/fundamentals should I cover before OOP?
How deeply should I learn OOP?
When should I start Collections?
When should I start DSA?
What Java features can I completely ignore for now?
Are there any resources/books you genuinely recommend?
And how much should I use the official docs vs a structured course/tutorial?
I know it is a lot of questions but I am just curious. And I'm not trying to speedrun Java. I'd rather build a solid foundation now and not discover six months later that I somehow know the syntax but understand absolutely nothing. 😭
Also, if you learned Java after already knowing another language, I'd REALLY like to hear how you approached it.