Eclipse is an integrated development environment (IDE) used in computer programming, and is the most widely used Java IDE. It contains basic workspace and plug-in systems that can be developed to customize the environment. Eclipse is mostly written in Java and its main use is to develop Java applications, but can also be used to develop applications in other programming languages ââvia plug-ins, including Ada, ABAP, C, C, C #, COBOL, D, Fortran, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby (including Ruby on Rails framework), Rust, Scala, Clojure, Groovy, Scheme, and Erlang. It can also be used to develop documents with LaTeX (via TeXlipse plug-ins) and packages for Mathematica software. The development environment includes Java Eclipse (JDT) development tools for Java and Scala, Eclipse CDT for C/C, and Eclipse PDT for PHP, among others.
The initial Codebase comes from IBM VisualAge. The Eclipse software development kit (SDK), which includes Java development tools, is intended for Java developers. Users can extend their capabilities by installing plug-ins written for the Eclipse Platform, such as development toolkits for other programming languages, and can write and donate their own plug-in modules. Since the introduction of OSGi (Equinox) implementation in version 3 Eclipse, plug-ins can be dynamically plugged and termed (OSGI) bundles
The Eclipse software development kit (SDK) is free and open-source software, released under the terms of the Eclipse Public License, although it is not compatible with the GNU General Public License. This is one of the first IDEs running under the GNU Classpath and runs without problems under IcedTea.
Video Eclipse (software)
History
Eclipse is inspired by the SmallTalk-based VisualAge family of the integrated development environment (IDE) products. Although quite successful, the main drawback of VisualAge's product is that the code developed is not in a component-based software engineering model. Instead, all code for the project is held in a compressed clod (somewhat like a zip file but in a proprietary format called.dat). Individual classes can not be accessed easily, certainly not outside the tool. A team, especially in the IBM Cary NC lab, developed a new product as a Java-based replacement. In November 2001, a consortium was formed with a board to develop Eclipse as an open-source software. It is estimated that IBM has invested nearly $ 40 million at that time. The original members are Borland, IBM, Merant, QNX Software System, Rational Software, Red Hat, SuSE, TogetherSoft, and WebGain. The number of boards increased to over 80 by the end of 2003. In January 2004, the Eclipse Foundation was established.
Eclipse 3.0 (released on June 21, 2004) selected OSGi Service Platform specification as a runtime architecture.
The Association for Computing Machines recognizes Eclipse with the ACM Software Systems Award 2011 on April 26, 2012.
License
The Eclipse Public License (EPL) is the underlying license to which the Eclipse project is released. Some projects require a double license, in which the Eclipse Distribution License (EDL) is available, although the use of this license should be applied and considered on a case-by-case basis.
Eclipse was originally released under the General Public License, but was subsequently re-licensed under the Eclipse Public License. The Free Software Foundation says that both licenses are free software licenses, but not compatible with the GNU General Public License (GPL).
Name
According to Lee Nackman, IBM Rational Division Chief Technology Officer (originally from 2003) at the time, the name "Eclipse" (originally from at least 2001) was not a word game on Sun Microsystems, as the main competition of the product at the time. the naming is Microsoft Visual Studio, which Eclipse is eclipse.
Different versions of Eclipse have been given different science names. A version named after Callisto, Europa, and Ganymede, which is the month of Jupiter, followed by a version called Galileo the inventor of the months. This is followed by two sun-themed names, Helios of Greek mythology, and Indigo, one of the seven colors of the rainbow (produced by the sun). The later version, Juno, has triple meaning: Roman mythological figure, asteroid, and spacecraft to Jupiter. Kepler, Luna, and Mars continue the theme of astronomy, and then Neon and Oxygen are the themes of chemical elements. Photons represent the return of sun-themed names.
Release
Since 2006, Yayasan has coordinated the annual release of Simultaneous Release . Each release includes the Eclipse Platform and some other Eclipse projects.
In 2008, every Simultaneous Release has occurred on the fourth Wednesday of June.
Maps Eclipse (software)
Architecture
Eclipse uses plug-ins to provide all the functions inside and on the run-time system. The run-time system is based on Equinox, the implementation of the core OSGi framework specification.
In addition to enabling the Eclipse Platform to be expanded using other programming languages, such as C and Python, the plug-in framework allows Eclipse Platform to work with letter-writing languages ââsuch as LaTeX and network applications such as telnet and database management systems. The plug-in architecture supports writing desirable extensions to the environment, such as for configuration management. Java and CVS support is provided in the Eclipse SDK, with support for other version control systems provided by third-party plug-ins.
With the exception of a small run-time kernel, everything in Eclipse is a plug-in. Thus, each developed plug-in integrates with Eclipse in the same way as any other plug-in; in this case, all the features "are created equal". Eclipse provides plug-ins for a variety of features, some of which come from third parties using free and commercial models. Examples of plug-ins include for Unified Modeling Language (UML), for Sequence and other UML diagrams, plug-ins for DB Explorer, and more.
The Eclipse SDK includes the Eclipse Java (JDT) development tool, offering an IDE with a built-in Java incremental compiler and a complete model of Java source files. This allows advanced refactoring and code analysis techniques. The IDE also uses the workspace , in this case a set of metadata above the flat file space that allows modification of external files as long as the appropriate workspace resources are refreshed thereafter.
Eclipse implements graphical control elements from a Java toolkit called Standard Widget Toolkit (SWT), while most Java applications use the Java Standard Abstract Toolkit (AWT) or Swing. The Eclipse user interface also uses an intermediate graphical user interface layer called JFace, which simplifies building applications based on SWT. Eclipse was made to run in Wayland during the Google Summer of Code (GSoC) Project in 2014.
In 2017, the language pack is being developed by The Babylon Project providing translations to over 40 natural languages.
Rich Client Platform
Eclipse provides Rich Client Platform (RCP) to develop general purpose applications. The following components are rich client platforms:
- Equinox OSGi - standard bundling framework
- Core platform - boot Eclipse, run plug-in
- Standard Widget Toolkit (SWT) - portable widget toolkit
- JFace - the viewer class to bring the model view control programming to SWT, file buffer, text handling, text editor
- Eclipse Workbench - views, editors, perspectives, wizards
Examples of rich client applications based on Eclipse are:
- IBM Notes 8 and 9
- Attachmate-Novell NetIQ Designer for Identity Manager
- Apache Directory Studio
- Remote Component Environment
Server platform
Eclipse supports development for Tomcat, GlassFish and many other servers and is often able to install the required server (for development) directly from the IDE. Supports remote debugging, allowing users to watch variables and step through application code running on the attached server.
Web Tools Platform
The Eclipse Web Tools Platform (WTP) project is an extension of the Eclipse platform with tools for developing Web and Java EE applications. These include source and graphic editors for multiple languages, wizards, and native applications to simplify development, as well as tools and APIs to support app implementation, deployment and testing.
Modeling platform
The Modeling Project contains all the official projects of the Eclipse Foundation that focus on model-driven development technologies. All are compatible with the Eclipse Modeling Framework made by IBM. The projects are separated into several categories: Model Transformation, Model Development Tool, Concrete Synthesis Development, Abstract Synthesis Development, Technology and Research, and Amalgam.
The Transformation projects model uses the Eclipse Modeling Framework (EMF) model as input and generates the model or text as output. Models for model transformation projects include ATLAS Transformation Language (ATL), open source transformation languages ââand toolkits used to alter a given model or to generate new models from a given EMF model. The model for the text transformation project contains Acceleo, MOFM2T implementation, the standard model for the text language of the Object Management Group (OMG). The Acceleo code generator can generate any textual language (Java, PHP, Python, etc.) from an EMF-based model defined with any Unified Modeling Language (UML), System Modeling Language (SysML), etc.). It is open source.
The Tool Development Model project is an implementation of the various modeling standards used in industry, and their toolkits. Among these projects can be found the application of several standards:
- Unified Modeling Language (UML)
- Systems Modeling Language (SysML)
- Object Constraint Language (OCL)
- Business Process Model and Notation (BPMN)
- Interactive Media Manager (IMM)
- Business Vocabulary Semaphics and Business Rules (SBVR)
- XML Schema (XSD)
- National Electronics Distributor Association (NEDA)
The Concrete Synthesis Development Project contains a Graphical Modeling Framework, an Eclipse-based framework dedicated to graphical representation of EMF-based models.
Synthesis Development Project Abstract hosts Eclipse Modeling Framework, the core of most Eclipse Foundation modeling projects and frameworks available for EMF such as Connected Data Objects (CDO), EMF queries or EMF validation.
The Technology and Research Project is a prototype of the Modeling project; the project is used to host all of the Eclipse Foundation modeling projects during their incubation phase.
Amalgam provides packaging and integration between all the modeling tools available for the Eclipse package dedicated to the modeling tool.
Extensions
Eclipse supports many extension options, adds support for Python via pydev, Android development via Google ADT, JavaFX via e (fx) clipse, JavaScript, jQuery and many others in the Eclipse Marketplace. Valable is a Vala plug-in for Eclipse.
Alternative distribution
Several alternative distributions exist in the Eclipse project.
PHP Development Tools
The PHP project hypert Preprocessor (PHP) Development Tools provides a framework for the Eclipse platform. The project covers all development components, including code completion, PHP development and facilitates extensibility. It leverages the Eclipse Web Tools Platform (WTP) and Dynamic Languages âââ ⬠<â â¬
Android Development Tool (ADT) is a stop Google plug-in for Eclipse IDE designed to provide an integrated environment for building Android apps. ADT expands Eclipse's ability to allow developers to set up new Android projects, create app UIs, add packages based on the Android Framework API, debug their apps using the Android SDK tool, and export signed (or unsigned).apk files in sequence to distribute apps they. It's available for free to download. It was the official IDE for Android but was replaced by Android Studio (based on IntelliJ IDEA Community Edition). ADT has been officially deprecated since late 2015, and now Google focuses on Android Studio as the official Android IDE. The Android Device Monitor that ships with ADT is built on the Eclipse Platform. This tool is still shipped with Android Studio.
See also
- Comparison of integrated development environment
- Comparison of integrated development environment for Java
- List of Eclipse-based software
- List of Eclipse projects
References
Source
External links
- Official website
- Eclipse Wiki
Source of the article : Wikipedia