top | item 18413893

(no title)

kankroc | 7 years ago

If your end game is working professionally just check what is more in demand in your geographic location.

Personal opinion

C# is a lot better than Java. You have less boilerplate code (getter and setter in 2018, really?) and lambdas are great.

But really both are similar so you can pretty much just start with one and still find your way in the other.

discuss

order

yawz|7 years ago

Java is the most popular language of the JVM ecosystem, but not the only one. If I were to restart from scratch, I would seriously look into Kotlin, which is how Java should have been.

lockje|7 years ago

Honestly, people still using the getter and setter argument in 2018 as a reason to pick a language should not be taken seriously.

Indeed Java has more boilerplate, but honestly I've never been bothered by it (as you can generate most within your IDE) and because its explicitly written down it can make code more readable.

And Java also has lambda's.

jcelerier|7 years ago

> because its explicitly written down it can make code more readable.

more text to read does not means "more readable", it means more effort to do

tigershark|7 years ago

Java is much heavier to read because of all the boilerplate. And it may have lambda but for example the stream implementation sucks compared to the elegance of LINQ. They had 8 years to make it right and I’m still amazed how did they manage to implement it so badly...

wernercd|7 years ago

Yeah... the bigger reason to move away from Java isn't Getters and Setters...

The bigger reason is one word: Oracle

Whether you go towards C# or other companies... Oracle is a horrible company.

osd|7 years ago

lambda's are much more limited in flexibility when compared with linq. Because of the way java lambda's work, I imagine there are some scenarios where they are more performant, but it probably comes down to the specific problem/usage.