Java a meme language?

java a meme language?

i mean why would it be? or why would somebody consider is as dying?

> still pretty most programming jobs require Java knowledge
> has a pretty nice learning curve
> huge amounts of learning materials

i mean the only thing I can say that I particularly dont like is that you cannot really protect your source code or it requires >9000 techniques

what do you say, Sup Forums?

>protect your source code
triggered

im sorry, Mr. S

Java is mostly used by people who have jobs. It's not a good choice, when you want to write fizzbuzz-tier programs, that's why Sup Forums hates it. Most people here are gamers and consumerist, not actual IT people.

literally this

This is the actual answer

It's a shit language but has seen widespread adoption and the JVM is a nice piece of software engineering.

this is how I feel. It's better to do small things in another lang due to all the boilerplate, but when it comes to engineering a huge distributed system that will need to be fault tolerant and be maintained for 10+ years, Java is probably one of the best choices. With Java 8 + streams we get most of the functional goodies too so it's all around a great language. Great Community as well, theres libraries for everything!

>It's a shit language
It's good for what it is, a "safe" language.
Safe meaning that a team of hundreds of retards can smash the keyboard for a few hours and end up with something that works if it compiles. Every feature that could be considered convenient but would be dangerous in an idiot's hands is gone.

One can have expressiveness while maintaining memory/type/… safety. It's just that Java went full retard on OO.

Gonna need an example on this one. The only things that truly are terrible are (imo):
1. Primitives. Fuck them.
2. No multiple inheritance, but this could also be a good thing so its really in the eye of the beholder.

Absolutely, and C# pretty much solves that problem.

Just use Scala. Last couple of projects I have worked on would have been Java but are now written in Scala due to these reasons;

> multiparadigm
> interop with java libs
> runs on the JVM
> nice collections
> good libs for data processing (spark, avro)
> greats libs for highly abstracted concepts or DSLs

>1. Primitives. Fuck them.
explain?

Yep. Java is the 21st century COBOL. It will be around for looooong time.

The fact that they even exist is terrible, in a pure OOP world like smalltalk and ruby everything is an object, NOPE not with java you have to worry about primitives and handle them. It introduces lots of bad things, like for example db inserts primitives can't be null so if you're using mybatis or whatever and have a primitive field in your pojo it'll show up as 0 because thats the default instead of null like it should be. Its just bad. Everything should be an object and that should just be the end of it.

Oh, you're talking about that other problem that C# solved.

Oh tahts cool, I don't know C# at all but thats really cool that they went to a better OOP paradigm!

It has a unified type system so everything is an object.
Besides that, it also has nullable types. int cannot take the value null, but Nullable can. You also get the really nice syntactic sugar of declaring it as an int? and doing operations like int myRegularInt = myNullableInt ?? 0 to provide default values in case of null.
It's basically made for database shit.

Damn. Thats awesome, might have to finally look into it. Is xamarin/mono the best C# implementation for linux?

I don't use it on platforms other than Windows so I can't help you there, sorry.

In all honesty Java is probably the best high-level language ever created. It has only improved and improved since its creation and is at the top of the industry for a reason. Java is easy, readable, portable, very easily extendable and it is more than efficient enough for the vast majority of circumstances. The only thing you wouldn't want to use it for is game development and low-level systems programming.

If you aren't using Java you are a fucking retarded autist, plain and simple.