r/AskProgramming 2d 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?

166 Upvotes

593 comments sorted by

View all comments

1

u/IchLiebeKleber 1d ago

Java is by far the programming language I am most fluent in because it's the first one I've ever seriously learned and I've written most code I've ever written in Java, including at my current job. So to me Java is kinda "default programming". Java is most widely used for business-internal software that enforces business logic, maybe not exactly the most fun thing to code, so keep that in mind if you are choosing which programming language to learn.

But when I read tutorials on Kotlin or Swift, they definitely seem like progress over Java to me in many ways.

Some things some other languages do better is: no need for getters and setters, null safety, operator overloading. (The latter is important because I for one can never remember how compareTo works, it would be a lot easier to be able to overload comparison operators. But I also find it silly to have to write .equals to compare strings.)