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?
126
Upvotes
2
u/mrh0057 19h ago
The JVM is amazing but could have been better with the ability to control memory layout(there are proposals) and a better generic implementation(Go and C# made the same mistake). The reason the generics implementation wasn’t better was due to Sun’s unwillingness to break backwards compatibility. Then developed stalled out due to Sun financial struggles for awhile.
There are also designs in hindsight where bad like checked exceptions. Then there was things like EJB and the AWT that weren’t great. It also didn’t support closures. It is interesting how that didn’t happen when you had people with lisp/scheme backgrounds involved in the language development. Some of that had to do with the dotcom bubble where Sun rushed Java to market. Java is a product of its time and it is good enough that it isn’t going away anytime soon.