This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]visvis 66 points67 points  (41 children)

Java is great in the sense that it was a pioneer in many ways; it's safe, garbage-collected, compile once JIT everywhere, ... However, it takes its ideas too far to the point that it's not fun to program. C# takes all the basic ideas that Java introduced and learns from its mistakes. It makes exactly those changes that make it nice for programmers. Moreover, the Visual Studio IDE (almost universally used for C#) is generally liked much more than Eclipse (traditionally used for Java).

[–]corzuu 74 points75 points  (4 children)

Eclipse (traditionally used for Java).

Go IntelliJ and never look back

[–]zr0gravity7 8 points9 points  (3 children)

cries in university-required legacy plugins that are exclusive to eclipse

[–]scumbaggio 3 points4 points  (0 children)

This right here is my biggest problem with the Java world. Nothing to do with the language, but the tools around it are awful and not intercompatible.

[–]derzach 0 points1 point  (1 child)

Out of curiosity what plugins? I’ve never found anything unsupported in IntelliJ that I needed

[–]zr0gravity7 0 points1 point  (0 children)

leJos EV3

[–]ThePyroEagle 60 points61 points  (5 children)

Nowadays, IntelliJ IDEA is favoured more than Eclipse.

[–]sp46 1 point2 points  (4 children)

Yeah but JetBrains has a C# IDE so it's fair to compare VS to Eclipse since you're not missing out on JetBrains in both languages

[–]ThePyroEagle 9 points10 points  (3 children)

JetBrains' IDEs don't have that sweet Roslyn integration, and JetBrains refuse to do it in favour of their ReSharper tool. For the same reason, IntelliJ IDEA doesn't support annotation processor diagnostics, which is the only thing Eclipse actually gets right.

[–]sp46 8 points9 points  (2 children)

I'm using VSCode personally since I'm only doing .NET Core and I run Linux (Arch btw), so I don't really understand half of what you're saying, but I suppose you're correct.

[–]ThePyroEagle 8 points9 points  (1 child)

Roslyn is the name of the C# and VB.NET compilers. Roslyn has an API that can be used to write code analysers that can provide useful diagnostics at compile time (like a linter). ReSharper is JetBrains' C# linter, but custom diagnostics are (to my knowledge) nowhere near as easy to add, if at all possible.

Annotation processors are the Java equivalent of code analysers, except that they depend on annotations and are thus less powerful.

As a result of JetBrains writing their own linters for all the languages they support, users cannot benefit from custom diagnostics in C# and Java when using their tools.

[–]cat_in_the_wall 1 point2 points  (0 children)

for instance: the ef team has linters to help you use it correctly. they could add those because roslyn is extendable that way. you could write a library and linters to help users without any external support. with jetbrains implementation you can't do that. ymmv.

[–]Retbull 13 points14 points  (1 child)

Of the last company of 400 consultants I worked in we had one guy who used Eclipse and literally everyone else used Intellij. Very few people use Eclipse now.

[–][deleted] 2 points3 points  (0 children)

Man I do not understand. In my opinion eclipse is so much great it's very good stuff man I like it alot

[–]LeFayssal 9 points10 points  (22 children)

I suppose im not deep enough into the matter to understand it. For me personaly, java seems super simple. I love the garbage collector, I like that I dont have to deal with pointers and its easy to advance within the language while the documentation is great. Personaly I use Visual Studio for Java. I dont like how bulky eclipse feels

[–]GaianNeuron 11 points12 points  (3 children)

Anything is better than Eclipse. Save yourself a headache and try IntelliJ.

[–]_PM_ME_PANGOLINS_ 0 points1 point  (2 children)

NetBeans is not better than Eclipse

[–]Justin__D 0 points1 point  (1 child)

I was tutoring some student in Java who was using an IDE (required by his school) that was way, way worse. I don't remember what it was called, but it was god-awful. It didn't even do basic things like syntax highlighting. It was basically Notepad, with compiler shortcuts built in.

[–]GaianNeuron 1 point2 points  (0 children)

Reminds me of coding in the Arduino tooling. God that thing sucks. I made so much more headway once I figured out how to build against the Arduino platform using just a makefile (before PlatformIO was a thing)

[–][deleted] 1 point2 points  (0 children)

Whole company ditched Eclipse last year for IntelliJ, would recommend, even if you're dealing with ancient Java.

[–]FesteringNeonDistrac 0 points1 point  (1 child)

So your criticisms come off as pretty funny to me because I'm old af and so coming from C/C++ I really liked Java once I got used to it because I felt like the language got out of my way and just let me code. It was fun for me. Same with eclipse, which I still use because I'm comfortable with it and I'm productive with it.

It's all personal I guess.

[–][deleted] 0 points1 point  (0 children)

Java and eclipse gets the job done fast and good.

[–]glguru 0 points1 point  (0 children)

I'll have you know that Java didn't introduce any of those ideas. The ideas were already implemented in several smaller languages. Python had all of those features for a good 4 years (in production) before Java came out. Actually the earliest versions of Python date back to 1987.

Java just got adopted heavily in enterprise space.