Robust, Feature-Rich IDE with a Steep Learning Curve
February 14, 2019

Robust, Feature-Rich IDE with a Steep Learning Curve

Jonah Dempcy | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User

Overall Satisfaction with Eclipse

We use Eclipse for Java development which includes building and deploying web services, as well as Java Android development, although for the latter we primarily use Android Studio now. However, we have legacy Android applications which still require the use of Android Studio as they were never upgraded to Android Studio and Gradle. So, for Maven projects we still do Android development with Eclipse. Primarily, however, we use Eclipse for building web apps and cloud services.
  • Eclipse is great for its Docker integration. We have had a breeze deploying using Docker with Eclipse.
  • I love Eclipse's local history feature. Even with Git Flow integration, which we also use, it's nice to be able to quickly diff between current and older versions of a file.
  • Eclipse has a very powerful search feature for finding and replacing code.
  • Eclipse is also great at refactoring. I love its auto-import and code generation features.
  • Eclipse has so many windows that it took me years before I wasn't overwhelmed by them. When I first started using Eclipse in 2006 I couldn't stand it.
  • The learning curve is very steep. There are a hundred little tricks you have to learn.
  • Sometimes Eclipse can get into a bad state and you have to clear the caches and restart or go through elaborate build-clean-build processes to fix it.
  • Eclipse can run very slowly.
  • Eclipse is notoriously bloated with unnecessary features that most of us will never use.
  • Eclipse has mostly had a positive impact by allowing us to build Java services and deploy them to the cloud easily.
  • Eclipse has had some negative impact in terms of hours spent trying to fix projects that got into a bad state.
NetBeans is the closest competitor I've found to Eclipse for Java development. IntelliJ IDEA is good as well but it isn't free. NetBeans is a free competitor that has split the Java community, and a lot of it comes down to preference, like the famous vim vs. emacs wars. I would say that Eclipse is harder to use but once you learn it, there's no reason to start the learning curve all over again with NetBeans, even though the learning curve is not that steep. In my case, since I already knew Eclipse inside and out from my time at Amazon.com, I was happy to continue using it. If I were to start over again, I might start with NetBeans because the learning curve is so much more moderate. However, I do think Eclipse has a rich plugin ecosystem and robust feature set that makes it more appropriate than NetBeans for highly complex Java applications. I like Eclipse's concept of workspaces and its ability to switch between a lot of different projects, each with their own configurations. Eclipse is good at environment management.
Eclipse is great for Java development. It's not my first choice for Android development since Android Studio is so much better now. However, having done Android development in Eclipse for years, it's not that bad for that either. Eclipse is also not my first choice for web development of any kind, despite plugins that go a long way to supporting web languages. There are simply better IDEs out there if you want to write Ruby, Python, Perl, or PHP code. There are also better IDEs and text editors for HTML, CSS, JavaScript, and many of the new web technologies like CoffeeScript and Less. I pretty much only use Eclipse for Java development and for that it's a must.