1.2.1 ??? Eclipse structure
In addition to the operating kernels of the platform, Eclipse also includes a workbench, work area, help, and teamwork component. For basic frameworks, other plug-in tools can be used to create applications (see Figure 1.1).
?
Operating platform
The main job of the platform is to find which plugins in the Eclipse plugin directory are available. Each plugin has an XML load file listing the interface of the plugin. It includes extended points for providing other plugins, and which extensions are required for other plugins. Since the number of plugins may be very large, the plugin is only loaded when it is used to save startup time and resources. The second part of this book will focus on the architecture of the plugin, how to work between plugins and how to use PDE for plug-in.
Chart 1
?
Workshop
The workshop is responsible for managing the user's resources, which is organized into one or more items on the top layer. Each project is a subdirectory of the Eclipse's workshop directory, and each project can contain multiple files and folders. Generally, each folder can be seen as a subfolder of the project, but a folder can be connected to any directory of the file system.
The workshop has saved some changes history of each resource, which makes the rapid revocation of changes may be possible, and it can also restore the previous save status, and even a few days ago, this is mainly dependent on the user's historical settings. Configuration. This feature in the work can reduce the risk of resource loss to minimum.
The work is also responsible for managing a reminder tool, which is used to remind changes in the variation of the workshop resources. This tool can also be a project standard, if it is a Java project, it can provide code to configure the necessary resources necessary.
?
Work bench
The workbench is a graphical user interface that includes a perspective and editor in addition to the men's menus and toolbars that users are familiar with. These will be discussed in the second chapter.
The Eclipse table is worth noting that it looks not like a Java application, more like a native application. This is mainly because it is created by Eclipse SWT and JFACE, and the user interface toolbox is built on SWT. SWT is not like other standard Java graphics API (AWT and SWING) to simulate the graphics toolbox of this unit, which is a graphic of the operating system native.
Since SWT must be ported to each operational platform of Eclipse, SWT is also one of the most controversial aspects of Eclipse. This is no longer a serious problem because SWT has been able to adapt to the most popular platforms (including Windows, Linux / Motif, Linux / GTK2, Solaris, QNX, AIX, HP-UX, and Apple operating systems).
Using SWT and JFACE to create our own local Java app is completely possible. The programming introduction of SWT will be in Appendix D in this book, and JFACE's brief introduction can be queried in Appendix E. It is important to note that although Eclipse uses SWT / JFACE, it is not forced to use it to use it to write a Java application, you can use AWT / SWING, unless you are writing Eclipse plugins.
?
team cooperation
Team Collaboration Support Plug-in has improved the use of version control (or configuring management) systems, which manages the resources of the user project to define the necessary processes saved and retrieved in the repository. The Eclipse platform contains a CVS client. CVS will be described in Chapter 6.
?
Help
????? like the Eclipse platform itself, help components are also an extensible documentation system. Tool providers can use XML to add files in HTML format. If there is associated with other plugins, you can also help topics into the previous help theme tree.
1.2.2 ??? Neutral language and platform
Although Eclipse is written in Java and is widely used in the Java compiler, it is still a language neutral. Java development requires some support for plug-ins, and Eclipse if using other languages, such as C / C , COBOL, and C #. Eclipse is also the neutral in human language. Since the same plug-in mechanism is used, it makes it easy if you add different languages. It uses a special plugin type called plug-in debris. IBM also provides language packs including Chinese (Traditional, German, Italian, Japanese, Korean, Portuguese and Spanish). You can get a language pack from the download of Eclipse's official website.
Although Eclipse is written in Java language, it can be run on any platform in principle, but Eclipse is not a platform neutral in strict sense. This is mainly because Eclipse decides to use the operating system itself graphics, so Eclipse can only run on the platform that has been installed (already mentioned above).
If your system is not within the above platform, then you don't have to worry too much. Because Eclipse is an open source project, the source code is shared, and some people have transplanted them to other platforms. You can also find a solution through the Eclipse newsgroup, perhaps, it will become part of the official official version of Eclipse. If there is no way, if you have enough ambition, maybe you can carry your Eclipse's porting work.
1.3 ??????????
One of the most often mentioned features of Eclipse is the GUI constructor - a graphics tool for establishing a user interface. For such a feature that has highly licensed, it is not possible to become part of the official free Eclipse as part of other features. For these reasons, the Eclipse.org Association must balance economic interests and open source communities expectations.
There may be the following ways: business operation, just like IBM's WebSphere, follow the price of Eclipse-based partial Eclipse development kit; free or cheap commercial plug-in, such as J2EE plugin Lomboz and Sysdeo Tomcat plugin (in Chapter 7 Mentioned); open source project.
The next version of Eclipse is expected to be released in early 2004 and is now in development. There are several improvements:
n ???????? Make it a universal application framework
n ???????? Java-related language support, such as JSP, and provide better plug-in loading files and J2EE descriptors
n ???????? Support J2SE1.5, J2SE1.5 is expected to include generics and enumeration support
N ???????? Java object logical view
The Eclipse website is the best source for Eclipse information. If you are interested in new features and existing features, you can access the Eclipse newsgroup. You can join the Eclipse community to find new plugins, you can also report errors or make better features.
1.4 ?????????? Summary
If you are looking for a powerful and free Java IDE, you can't find anything else. Eclipse SDK You can download from Eclipse's website, including an IDE with rich features, and Java Development Toolbox (JDT). Chapter 2-7 will introduce JDT usage. Eclipse is definitely not just a Java IDE. It is an extensible, open source development tool platform. For example, it can be used as other languages, such as C / C , COBOL, C # IDE.
Scalability is an unique function of Eclipse. Basically Eclipse except a very small running kernel, just a plurality of plug-ins, all things Eclipse plugins are implemented. Due to the special way of Eclipse, the new features of the plug-in can be seamlessly combined with existing features. In addition to JDT, Eclipse also includes a plug-in development environment (PDE). PDE is very easy to develop Eclipse's plugin. The second part of this book will introduce the use of PDE and introduce you how to add new features for Eclipse.
Although Eclipse is open source, it is a association management and guidance. This association consists of some software development companies that promote Eclipse to become a shared software development tool. Eclipse uses a CPL (Common Public License) license agreement (currently being applied for EPL, Eclipse Pulic Lisne), which is different from other open source protocols, which does not allow Eclipse to be integrated into other open source projects. By establishing and cultivating an Eclipse-based open source community, other companies in IBM and associations are mutually beneficial, rather than conflict, I hope to open up with Eclipse or expanded from Eclipse free or commercial software to open a new big market. .
????? No matter if you use Eclipse as a development platform to develop your own software or create a free or commercial tool for it, you will find it to bring you more. You can study other features of Eclipse in later chapters, and we guide you efficiently using Eclipse through development processes. In this way, we give you a number of Java developers who have higher productivity.
??????????????????????????????????????? Translator: Jiang Haolong (reproduced, please indicate)