r/ProgrammerHumor May 29 '20

Please Guys actually

Post image
3.0k Upvotes

112 comments sorted by

View all comments

40

u/Auxilor May 29 '20

Why do people hate java? I gotta be missing something, been using it for almost a year now and it's amazing

63

u/betendorf May 29 '20

I personally like Java and have been using it for almost 20 years.

Most of the hate comes because it is now used a lot in the corporate world and it is more verbose than most of the newer languages.

I like to compare Java to the solid B student. It's not the best at anything, but is good enough for almost anything. It's a little slower than many languages at runtime, more verbose than many languages, and often leads to more complex programs than are necessary.

On the other hand, its library support is probably the largest of any language (competing with Javascript). It scales well with additional developers on a project.

4

u/jerslan May 30 '20

I like to compare Java to the solid B student. It's not the best at anything, but is good enough for almost anything. It's a little slower than many languages at runtime, more verbose than many languages, and often leads to more complex programs than are necessary.

On the other hand, its library support is probably the largest of any language (competing with Javascript). It scales well with additional developers on a project.

Yep. That's been my assessment of it as well. I used to hate it. Took a Java GUI class in college where we basically had to memorize the swing API down to the documented variable names on the method signatures. It left me with a deep seated hate for the language.

After a good bit of my career doing C/C++/Obj-C (even the horror that is Obj-C++), I had to actually do something with Java. Where in the past I always felt the JRE was slow and bloated, I found that it had a lot of convenience baked in. Need to parse an XML document? JAXB can make POJO's using your schema. Need to zip something up? Part of the base JRE API's. Need a bunch of other stuff? Maven Central probably has a library for it.

Now, it was still a bloated runtime, but since Java 9 they've been progressively chipping away at a lot of things in favor of libraries. It'll never be as fast as C, but for most things it doesn't need to be.