views:

572

answers:

10

Hi guys,

I work with Visual Studio in my day to day job and I love the productivity features that it has. The Visual designers it provides are wonderful, such as for Winforms, WPF, DataSets, LINQ to SQL, Entity Framework, Class diagrams, etc...

I am after a similar development experience for developing in Java. It has been many years since I last did any professional Java development (2003 ish). I would hope that the tools have matured greatly since then.

I am looking for an IDE with a good GUI editor, and a good Data object editor. Other stuff would be a bonus (I've been intentionally vague with the Data point because it greatly depends upon the provider).

It would be lovely to have Visual Studio for Java, is there anything as good as Visual Studio (or better?).

Here is a short list of my requirements:

  • The IDE does not have to be free
  • The IDE does not need to have all features "out of the box" (plugins are ok)
  • The IDE has to run under Windows
  • The IDE must have a good GUI designer
  • The IDE must have a good Data object designer (ORM, etc)

Thanks for any feedback you can provide.

+2  A: 

Eclipse used to be the de facto standard, but nowadays NetBeans seems to beat it in every respect.

Joonas Pulakka
until Oracle cans it ;)
basszero
+1  A: 

Eclipse is extremely popular and very extensible and has grown to an incredible IDE. In terms of Visual Studio like designers I'm afraid you'll be disappointed as I haven't come across many useful ones yet.

Josef
I agree, I really like Eclipse's IDE. :) Very awesome, I've never done graphical work in Java so the lack of a designer there isn't a big deal to me.
Zack
+7  A: 

IntelliJ is not free, but I think it's superior to anything out there, including Eclipse and Netbeans. Well worth the money.

UPDATE: There's a free community edition of IntelliJ now, so the price tag need not be a deterrent anymore.

duffymo
+1 Very good choice indeed.
Daniel Persson
As I stated in the question, it's ok if the IDE isn't free. My company doesn't mind spending money on good productivity tools. It's well worth investing in tools that save time :-)
DoctaJonez
+1  A: 

Netbeans:

dfa
A: 

Another options is one of several Eclipse based products like MyEclipse or Rational Application Developer, although the second one is pricey and really oriented to JEE development on WebSphere.

IntelliJ is another one that seems popular.

I have only actually used RAD and standard Eclipse myself, but most of these have free trial versions so you can give it a whirl yourself.

Robin
MyEclipse has some really nice facilities especially for web development with Tomcat, but has proven several times to be fragile in corner cases. Be especially careful with the Pulse installer - have a non-pulse managed installation lying around if you do this for a living.
Thorbjørn Ravn Andersen
A: 

Netbeans but it's slow.

Maven manages to keep an IDE choice fluent and manages modules and jars we can use with several different IDEs. Netbeans is best completely free, IntelliJ is often recommend by pros and Eclipse seem to have the most functions but the later two aren't completely free.

LarsOn
+1  A: 

The best bet future wise is choosing tools that work with straight Java code - no binary stuff laying around - so you can always work with it manually should the IDE go belly up.

There is not a single IDE that is best at all your points and the market has shifted several times the last ten years. For Netbeans the problem right now is that Oracle bought Sun and Oracle ALREADY has JDeveloper (which has some very nice features especially with databases) so the future is uncertain.

Thorbjørn Ravn Andersen
+2  A: 

As a long time Java developer (12 years) who has suffered a number of IDEs over the years I have to say that Intellij is my IDE of choice. Last year I used both Netbeans and Eclipse on one of my personal projects but in the end I bought a personal copy of Intellij due to the extra productivity I get out of this powerfull IDE.

Feargal
+2  A: 

Intellij.

Easily the best IDE available today, among all languages.

U say Date, it auto completes to (based on the configuration)

Date date = new Date()

Intellij is what makes java bearable, in fact may be even acceptable.

Lakshman Prasad
A: 

From your requirements and your background, I believe that the only IDE that you'll find suitable is NetBeans, and I'm not trying to start a flame war.

John Doe