Eclipse - the development environment for modular cross-platform applications
Eclipse is a platform for creating softwareopen source software. It is based on Java and provides an opportunity to develop programs with plug-ins. It contains a set of embedded components, among which is the well-known product Eclipse - PDE plug-in development environment. PDE allows you to extend the platform itself, composed of embedded components. Toolkit creators can offer their own extensions and give users a holistic development environment (IDE).
In addition to the Java language on which Eclipse is written,The development environment is also used for other programming languages. There are many plugins that support C ++, Fortran, Perl, Prolog, Python, Ruby, etc. languages. The platform can be the basis for other software that does not have to do with writing programs, for example telnet and DBMS. Another example of code based on Eclipse is the PDT development environment with basic functions for editing and debugging PHP applications.
All rights are perverted
Open source software is licensed toto guarantee the rights of users. For example, the source program should be provided with the right to modify it and distribute it. This level of protection of rights is achieved with the help of a copyleft. Copyright protects copyright by prohibiting the distribution of programs when the user does not have this right. Copyleft also requires a license to cover the distributed software without changes. In this case, the essence of copyright becomes the opposite. Kopileft does not use copyright to save developer rights, but to transfer it to users.
Therefore, there are fears and doubts that openprograms will lead to loss of intellectual property, as copyleft will spread to other parts of the software. In other words, the license will require that the entire application containing open source code be distributed with the same rights. This is true for the General Public License (GNU) - under it is Linux. But there are permits that provide a different attitude to public and commercial interests.
OSI is a non-profit organization thatclearly defines what open source code is, and approves those licenses that meet its criteria. The Eclipse platform is distributed under the EPL, an open license, OSI-certified and facilitating its commercial application while maintaining the loyalty of open source authors.
Plug-in creators or users of the environmentThe development of programs should publish any Eclipse code that they use or modify, but they can license their own add-ons in the way they like. Transfer of rights to them as open source software is not required, as well as promulgating the source code.
And although many will not use Eclipse forthe availability of the source code of the platform is of great importance not only because of the lack of fees, but also because it promotes innovation and stimulates programmers to make their own product as a contribution to the common cause. The main reason for this is that the more labor is put into the project, the more important it is for everyone. If it benefits, then the number of developers increases even more and around the project a community is created, similar to those that emerged around Linux and Apache.
Non-profit organization
Eclipse - development environment, libraries andtools for creating, deploying and managing software, as well as the community of its creators. The platform was created by IBM in 2001 with the support of software vendors.
The Eclipse Foundation was established in 2004. It is a non-profit association supporting platform projects and improving the developer community and a system of mutually complementary programs and services. Today, the ecosystem of Eclipse includes organizations and individuals in the software industry.
The Fund monitors and manages projectsplatform. It serves the community, and the developers, who are called committers, are not in the state. They are employees of other organizations or independent programmers who voluntarily donate their personal time to work in the project.
Eclipse: Platform Features
- Creation of various tools for program development.
- Unlimited number of suppliers of tools, including independent.
- Support tools for working with various content, for example HTML, C, EJB, Java, JSP, GIF and XML.
- Ensuring full integration within and between different content.
- Eclipse is a software development environment with or without a graphical interface.
- Work in different operating systems, including Linux, Windows, Solaris AIX, Mac OS X.
- Using Java, the popular language for writing tools.
Eclipse: Getting Started Guide
After the first start of the program, a greeting message appears. The user can go to the overview and learn new functions, examples or be trained.
The workspace is made up ofviewports. A set of views is called a perspective. The "Resources" perspective, for example, includes views for editing, managing, and viewing projects.
Beginners should start with the "Foundations of the tool space", where you can get a lot of information about the different components of Eclipse and their interaction.
Working with JDT
To get to know JDT, you can open the Eclipse Java project. To do this, select the menu item "File" - "New" - "Project Java", enter the name of the project and click "Finish".
To change the current perspective, you need to select the menu item "Window" - "Open perspective" - Java or open a new window through the "Window" - "New window" and choose a different perspective.
The perspective contains ideas thatare designed for development in the Java language. In the left corner, on top, is a hierarchy with Eclipse Java packages, classes, JAR-archives and various files called the "Package Explorer". The main menu is replenished by 2 points: Source and Refactor.
Creating a program in JDT
To create a Java application, clickright click on the previously created project and select "New" - "Class". In the pop-up dialog box, enter the class name. The question is: "What method blanks do you want to create?" - type public static void main (String [] args) and click "Finish".
As a result, a program will be created that contains the entered class and an empty main (). The method must be filled with the program code (ad j was missed intentionally):
public class Hello {
public static void main (String [] args) {
for (j = 0; j <= 5; j ++)
{
System.out.println ("Hello");
}
}
}
During the recruitment you can see the features of the editor:
- autocompletion;
- syntax checking;
- auto-close the opening parenthesis or quotes.
Auto-completion of the code is caused by a combination of keysCtrl + space. This will result in a context-dependent list of options selected by the keyboard or mouse, whether it's a list of methods for this object or part of the keyword.
The syntax is checked against the incrementalcompilation. It occurs while the code is being written simultaneously with its compilation. Syntax errors are underlined in red, and a red dot with a white oblique cross appears to the left of them. The remaining errors are indicated on the margins in the form of a light bulb. You can fix them yourself using Quick Fix.
In the introduced example, the light bulb is locatedopposite the for statement, because there is no i declaration. After double clicking on the bulb, a list of possible corrections will appear. In this case for j it is proposed to create:
- class field;
- method parameter;
- local variable.
If you select one of the options with the mouse, you can see the resulting text.
Double-clicking on the required option generates the program code.
Running the application
If there are no compilation errors, the application can berun through the "Start" menu item. There is no compilation step, since it occurs while the code is being saved. In the "Startup Configuration" dialog that has already been set, you need to click the Run button on the right, at the bottom. A console with bookmarks and the result of the application will appear at the bottom.
The program can be started in the debugger. First of all, set a control point in System.out.println () with two mouse clicks on the gray box to the left of the editing window, next to the method call. The result is a blue dot. Select the "Start" menu - "Debug". The startup configuration window appears again. After clicking the "Start" button, a perspective of debugging with new views will appear.
In the "Debugging" view on the left, above,a call stack and a toolbar for managing the progress of the program. The panel contains buttons for stopping, continuing and terminating the application, executing and skipping the next statement, and returning from the method. To the right there is a row of panels with tabs: variables, control points, expressions and screen. When you select the variable tab, you can see the value of the variable j.
Detailed information about each of the views can be provided with a contextual help. Just click on the title bar and press F1.
Additional plugins
Software development environments,which are intended for their modification, compilation and debugging, are supplemented in Eclipse with components that are capable of modeling, automating building, testing modules, performance, managing configuration and versions.
The source control system CVS allows you to conduct team work on them. The changes you make are not mixed. This is an important and integral part of Eclipse.
The development environment is on eclipse.org. The plugins are located in the Plug-in Central directory.
Architecture
The basis of the platform is functionally saturatedRCP clients. Simplified, they can be represented by a set of plug-ins used in the development of programs. There are also additional recommended components and optional.
The main components are as follows:
- The runtime defines the component model based on the OSGi specification, extensions, and extension points. Also provides additional services, such as a system log and concurrency.
- The SWT package contains widgets for the Eclipse functions and the user interface. Has an add-in with classes that facilitate the creation of graphical applications.
- The tool space includes perspectives, views, and editing windows.
- The Help component provides support for users in the form of a help system or an interactive task list.
- Plugin "Update" allows you to get the latest version of the software.
- Component "Team" offers an infrastructure for connecting its own version control systems.
The platform, created by IBM, has becomea fully functional open source system. Over one hundred companies are its participants. Although the idea of creating such systems was before, the thoughtful, reliable and elegant design of Eclipse allowed it to take the forefront.