If you don’t know what Eclipse is, I would strongly recommend you to look at the Eclipse web-pages. The very first statement on the main page will make everything clear to you: “Eclipse is a universal tool platform – an open extendable IDE for everything you want to create and for nothing specific”. It is a real Suisse army subdivision in the software tools area.
Here are two comments, left by different developers, who share their experience of using Eclipse platform:
Developer 1: I think the tools like Eclipse make too much for a lazy programmer. When I see how far more you can make, when such a wonderful tool eliminates trivial coding tasks, it is hard for me to understand how a professional can do without the tool like Eclipse. Eclipse is a very good assistant for reconciled formatting, intuitive debugging, built-in support of CVS and Junit, summary and class hierarchy and graphical interface.
Developer 2: It was useful to study the using of development tools with an advanced graphical interface like Eclipse. It eliminates much of trivial work, giving me more time to think about a significant code and important algorithms.
Does it sound too good to be the truth? Most of us know, if a tool is to make everything, it does nothing. But it’s not the same for Eclipse. I will provide you with some of its advantages:
• provides reconciled set of possibilities for most of the platforms
• apart from Java, it supports other languages
• many flexible tools and frameworks for building various types of applications
• it has a free and an open source with a full support as well
• it is really extendable and configurable
• industrial level of development
You will see the real advantages of using Eclipse, when you understand, that it’s not the platform for Java development only. The Eclipse philosophy is embodied in its architecture: to provide a small core, that gives developers a coherent way for system possibilities extension. Every extension or link-up contributes specific functionality into Eclipse configuration, and is to ensure extension points, that another link-up can use.
The link-ups architecture makes it possible for Eclipse to support a number of languages and paradigms. Here are the examples of the link-ups:
• Eclipse C Development Tools (CDT) project (http://www.eclipse.org/cdt/), that is sponsored by Eclipse Foundation, ensures quality support of C++. The project components include editing, debugging support, make-files generators, analysis, search and context help.
• The link-up COBOL (http://www.eclipse.org/cobol/) , sponsored by Eclipse Foundation as well, ensures the same possibilities for CDT.
• EPIC (http://e-p-i-c.sourceforge.net/) contributes programming environment for Perl into Eclipse.
• Pydev (http://sourceforge.net/projects/pydev/) – one of the several link-ups, that support Python language.
No matter what language you use, check if there is an Eclipse link-up, that will allow you to develop the programs in the language, using Eclipse: Haskell, ML, Prolog и GOO – all of them are supported.
Another huge advantage of using Eclipse is that it provides many tools and frameworks to build your application. They are flexible, so you can do it in several ways according to your requirements. Developers can use the EclipseRT technology to build rich desktop, web, enterprise, and embedded applications, as well as service-oriented architectures (SOA) and applications platforms.
In fact, regardlessly the platform you use, Eclipse acts like an application, made for this platform. When you upload Eclipse, you upload it for your particular platform; it has certain graphic means for every platform. It provides layout and impression, close to original ones, as well as better productivity.
This coherence in layout and impression will give you a big advantage. If you learn navigation through various Eclipse presentations, you will be able to switch from one language or platform to other ones and be sure, that everything works in the same way.
Undoubtfully, developers face some problems, using Eclipse, but it happens with all the products. Some programmers find the ways to break up Eclipse, using a visual editor. Some find Eclipse too slow and “overloaded” with functions, they don’t need. But many of them change their point of view, if they have to debug the code, written by other people. As a whole, their experience has turned out to be very positive and efficient.
I’m eager to learn about your experience of using Eclipse! 🙂
Eclipse and I have a love-hate relationship. It is sufficient for development in many languages but has caused IDE development to stop due to a lack of competition. How do you compete with free when you would need to create something completely new?
Yes, I do understand that Eclipse is a platform that anyone can build upon. Using it yields more of the same, not something really new.The Eclipse tech is getting a little long in the tooth. Surely we have learned something in the last decade that could be applied to rethink what an IDE is and how it should work.
This is just not true. There’s Visual Studio, IntelliJ IDEA, GeneXus, Code::Blocks, Netbeans, Coda 2, Aptana Studio, Cloud 9… how many IDE’s do you want? There is lots of developing going on in IDE’s right now. Cloud 9 is a great example of a new approach.
These do exist, but what is the difference between them? They all take the same general approach. In what way are they doing dramatic innovation not incremental changes? It isn’t an option of something very similar that will drive a dramatic increase in productivity. It is something very different. We must think outside the box. These products are ‘in the box’ thinking.
Although you may find “we have learned something in the last decade that could be applied to rethink what an IDE is and how it should work”, there are far fewer developers demanding IDE ingenuity than accepting the free tools given to them.
I am aware that developers and management are cheap. I’ve been in the business longer than Eclipse has. But if we reject that the technology we use should or can change we will dramatically reduce our future productivity when compared to what it might have been given much better tools.