Eclipse (software)
From Wikipedia, the free encyclopedia
Developed by | Free software community |
---|---|
Latest release | 3.4.2 / 2009-02-11 |
Preview release | 3.5 M6 / 2009-03-13 |
Written in | Java |
Operating system | Cross-platform |
Available in | Multilingual |
Development status | Active |
Type | Software development |
License | Eclipse Public License |
Website | http://www.eclipse.org/ |
Eclipse is a multi-language software development platform comprising an IDE and a plug-in system to extend it. It is written primarily in Java and is used to develop applications in this language and, by means of the various plug-ins, in other languages as well—C/C++, Cobol, Python, Perl, PHP and more.
The initial codebase originated from VisualAge.[1] In its default form it is meant for Java developers, consisting of the Java Development Tools (JDT). Users can extend its capabilities by installing plug-ins written for the Eclipse software framework, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules. Language packs provide translations into over a dozen natural languages.[2]
Released under the terms of the Eclipse Public License, Eclipse is free and open source software.
Contents |
[edit] Architecture
Eclipse employs plug-ins in order to provide all of its functionality on top of (and including) the runtime system, in contrast to some other applications where functionality is typically hard coded. The runtime system of Eclipse is based on Equinox, an OSGi standard compliant implementation.
This plug-in mechanism is a lightweight software componentry framework. In addition to allowing Eclipse to be extended using other programming languages such as C and Python, the plug-in framework allows Eclipse to work with typesetting languages like LaTeX,[3] networking applications such as telnet, and database management systems. The plug-in architecture supports writing any desired extension to the environment, such as for configuration management. Java and CVS support is provided in the Eclipse SDK.
The key to the seamless integration (but not of seamless interoperability) of tools with Eclipse is the plug-in. With the exception of a small run-time kernel, everything in Eclipse is a plugin. This means that every plugin developed integrates with Eclipse in exactly the same way as other plugins; in this respect, all features are created equal. Eclipse provides plugins for a wide variety of features, some of which are through third parties using both free and commercial models. Examples of plugins include UML plug-in for Sequence and other UML diagrams, plug-in for Database explorer, and many others.
The Eclipse SDK includes the Eclipse Java Development Tools, offering an IDE with a built-in incremental Java compiler and a full model of the Java source files. This allows for advanced refactoring techniques and code analysis. The IDE also makes use of a workspace, in this case a set of metadata over a flat filespace allowing external file modifications as long as the corresponding workspace "resource" is refreshed afterwards. The Visual Editor project (discontinued since June 30, 2006) allows interfaces to be created interactively, thus allowing Eclipse to be used as a RAD tool.
Eclipse's widgets are implemented by a widget toolkit for Java called SWT, unlike most Java applications, which use the Java standard Abstract Window Toolkit (AWT) or Swing. Eclipse's user interface also uses an intermediate GUI layer called JFace, which simplifies the construction of applications based on SWT.
[edit] Rich Client Platform
Eclipse provides the Eclipse Rich Client Platform (RCP) for developing general purpose applications. The following components constitute the rich client platform:
- Equinox OSGi – a standard bundling framework
- Core platform – boot Eclipse, run plug-ins
- Standard Widget Toolkit (SWT) – a portable widget toolkit
- JFace – viewer classes to bring model view controller programming to SWT, file buffers, text handling, text editors
- Eclipse Workbench – views, editors, perspectives, wizards
[edit] History
Eclipse began as an IBM Canada project. It was developed by OTI (Object Technology International) as a Java based replacement for the Smalltalk based VisualAge family of IDE products,[4] which itself had been developed by OTI.[1] In November 2001, a consortium was formed to further the development of Eclipse as open source. In January 2004, the Eclipse Foundation was created[5].
Eclipse 3.0 (released on June 21, 2004) selected the OSGi Service Platform specifications as the runtime architecture.[6]
Eclipse was originally released under the Common Public License, but was later relicensed under the Eclipse Public License. The Free Software Foundation has said that both licenses are free software licenses, but are incompatible with the GNU General Public License (GPL).[7] Mike Milinkovich, of the Eclipse Foundation commented that moving to the GPL would be considered when version 3 of the GPL was released.[8]
According to IBM Chief Technology Officer Lee Nackman, the name "Eclipse" was chosen to target Microsoft's Visual Studio product.[9]
[edit] Releases
Since 2006, the Eclipse Foundation has coordinated an annual Simultaneous Release. Each release includes the Eclipse Platform as well as a number of other Eclipse projects. The purpose is to provide a distribution of Eclipse software with static features and versions. Ostensibly, this simplifies deployment and maintenance for enterprise systems, and others may simply find it convenient. So far, each Simultaneous Release has been named after one of the moons of Jupiter, and has occurred at the end of June.
Release | Date | Platform version | Projects |
---|---|---|---|
Callisto | 30 June 2006 | 3.2 | Callisto projects |
Europa | 29 June 2007 | 3.3 | Europa projects |
Ganymede | 25 June 2008 | 3.4 | Ganymede projects |
Galileo | 26 June 2009 | 3.5 | Galileo projects |
[edit] See also
- List of Eclipse projects
- List of Eclipse-based software
- Comparison of integrated development environments
[edit] References
- ^ a b "Where did Eclipse come from?". Eclipse Wiki. http://wiki.eclipse.org/FAQ_Where_did_Eclipse_come_from%3F. Retrieved on 2008-03-16.
- ^ Eclipse Language Pack
- ^ TeXlipse homepage – LaTeX for Eclipse
- ^ Rick DeNatale (2008-10-15). "Will It Go Round in Circles?". http://talklikeaduck.denhaven2.com/articles/2008/10/15/will-it-go-round-in-circles.
- ^ "About the Eclipse Foundation". The Eclipse Foundation. http://www.eclipse.org/org. Retrieved on 2008-08-13.
- ^ "OSGi — the footings of the foundation of the platform". The Eclipse Foundation. http://www.eclipse.org/osgi/. Retrieved on 2008-06-25.
- ^ "Various Licenses and Comments about Them". Free Software Foundation. 2007-05-17. http://www.gnu.org/licenses/license-list.html. Retrieved on 2007-05-20.
- ^ Peter Galli (2005-11-02). "Moglen: GPL 3.0 Rewrite Drive Is No Democracy". eWeek. http://www.eweek.com/article2/0,1895,1881088,00.asp. Retrieved on 2007-05-20.
- ^ Darryl K. Taft (2005-05-20). "Eclipse: Behind the Name". eWeek.com. Ziff Davis Enterprise Holdings. http://www.eweek.com/c/a/Application-Development/Eclipse-Behind-the-Name. Retrieved on 2008-08-11.
[edit] Further reading
[edit] External links
Wikibooks has a book on the topic of |
|
|