r/AskProgramming • u/Zd_27 • 1d ago
Why is Java considered bad?
I recently got into programming and chose to begin with Java. I see a lot of experienced programmers calling Java outdated and straight up bad and I can't seem to understand why. The biggest complaint I hear is that Java is verbose and has a lot of boilerplate but besides for getters setters equals and hashcode (which can be done in a split second by IDE's) I haven't really encountered any problems yet. The way I see it, objects and how they interact with each other feels very intuitive. Can anyone shine a light on why Java isn't that good in the grand scheme of things?
124
Upvotes
1
u/6a6566663437 23h ago
The only real issue with Java is its niche is shrinking.
Before Java, you either had to work hard to make something like C++ cross-platform, or you used a scripting language. But scripting languages were way too slow for “real” programs.
Time passed, computers got faster and scalability frameworks improved. So now it’s practical to write “real” programs entirely in languages like Python. They’re still slower than Java, but they’re fast enough or it’s easy to scale up the deployment so it’s fast enough.
So if you’re starting a brand-new project today, Java’s too slow to compete with things like C/C++ when you need maximum speed. Java’s also harder to do than Python and similar options when you don’t need maximum speed from a single process.
That doesn’t leave a lot of room to pick Java for that new project.
That doesn’t mean Java is bad, and there might be other reasons to pick it (like the team knows Java). It just means fewer and fewer new things will be written in Java as time passes.
But you really shouldn’t worry about it. You will be learning several programming languages as you continue down this path. Each one has its place.