版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)設(shè)計</b></p><p><b> 外文文獻及譯文</b></p><p> 文獻、資料題目:Eclipse Distilled</p><p> 文獻、資料來源:Eclipse Distilled </p><p> 文獻、資料發(fā)表(出版)日期:2
2、005.2.14</p><p> 院 (部): 理學院</p><p> 專 業(yè): 信息與計算科學</p><p> 班 級: 信計</p><p><b> 姓 名: </b></p><p><b> 學 號: </b></p&g
3、t;<p><b> 指導教師: </b></p><p> 翻譯日期: 2012.5.12</p><p><b> 外文文獻:</b></p><p> Chapter 1. A Java IDE and So Much More!</p><p> Looking at
4、 Eclipse is similar to looking at a well-cut diamond. What you see depends on the angle of your view and on how deeply you gaze into the interior. To some viewers Eclipse is a Java IDE with the usual features one expects
5、 from such an environment: editor, debugger, and project builder with a wide array of preference customizations. To others Eclipse is a generic framework for tool integration providing an extensive, flexible plug-in API.
6、 The www.eclipse.org home page declares that "Ecli</p><p> Both perspectives are valid interpretations. As the Eclipse community continues its rapid expansion, other users will see it as a modeling too
7、l, a business rules management application, a business process designer, a development environment for embedded systems written in C++, or an HTML authoring and document management environment. Using the Rich Client Plat
8、form (RCP) configuration, Eclipse is the basis for any end-user client application.</p><p> Many books have been and will be written to describe each facet of the Eclipse diamond. This book focuses on Eclip
9、se as an integrated development environment for building Java applications. Those applications may be other open source utilities, large enterprise systems, or new plug-ins for Eclipse. This book is equally applicable to
10、 each of those project teams and individuals.</p><p> Eclipse is developed by and for teams using a modern, agile development process. Eclipse is developed using Eclipse in a large, distributed team and wit
11、h an iterative approach that rebuilds and tests the entire project every night. As a result, Eclipse is well suited to any project using these methods. This book describes several best practices common to agile developme
12、nt teams and explains in detail how Eclipse assists you in those tasks.</p><p> In this chapter, we'll view these facets of Eclipse:</p><p> Building blocks of the Eclipse platform archite
13、cture.</p><p> Development components provided by other Eclipse projects.</p><p> Alignment of Eclipse with the principles of agile development.</p><p> Given the wide-ranging in
14、terpretations of Eclipse, it is difficult to present a quick summary of its architecture. The most general description is an abstract view of the development and runtime environment for creating and deploying plug-in con
15、tributions. Alternatively, we can take a functional view that describes Eclipse as a flexible, extensible integrated development environment (IDE). We'll take the latter viewpoint and focus our attention on how Eclip
16、se provides an unparalleled opportunity</p><p> The Eclipse IDE is as follows:</p><p> Multi-platform. The target operating systems of Eclipse 3.0 are Windows, Linux (motif and GTK), Solaris,
17、AIX, HP-UX, and Mac OSX.</p><p> Multi-language. Eclipse is developed using the Java language, but it supports writing applications in Java, C/C++, and Cobol; additional language support is being developed
18、for Python, Perl, PHP, and others. Plug-in contributions to Eclipse must be written in Java.</p><p> Multi-role. In addition to programming activities, Eclipse supports modeling, testing, Web authoring, and
19、 many other roles.</p><p> The functional building blocks of the Eclipse IDE are illustrated in Figure 1-1. Each block added to the structure builds on the foundation of those below it. It's this modula
20、r nature of the Eclipse platform that has led to its unprecedented growth. The entire platform is open source and royalty-free for other open source or commercial products that add new building blocks.</p><p&g
21、t; Figure 1-1. Functional building blocks of the Eclipse development environment.</p><p> The shaded blocks represent this book's focus. However, along the way we'll review other contributed plug-i
22、ns that enhance the platform's capabilities for specialized tasks. Examples are unit-testing frameworks for Web-based applications, static code analysis tools, and a style checker that ensures consistent use of codin
23、g standards.</p><p> The next several sections introduce each of the building blocks shown in Figure 1-1.</p><p> 1.1.1. Eclipse Runtime Platform</p><p> The core runtime platfor
24、m provides the most basic level of services:</p><p> Plug-in registry. Loading plug-ins and managing a registry of available plug-ins.</p><p> Resources. Managing a platform-independent view o
25、f operating system files and folders, including linked resource locations.</p><p> UI components. The Eclipse user interface components are based on SWT and JFace libraries.</p><p> Update fac
26、ility. Eclipse applications have built-in support for installing and updating plug-ins from URL addressable locations, including remote Internet sites.</p><p> Help facility. A common help facility is share
27、d by all plug-ins.</p><p> The Eclipse model for platform-independent resources is an important foundation for representing projects, folders, and files in an IDE; we review this in Chapter 3, "Managin
28、g Your Projects." The update facility assists you in customizing your IDE with new plug-in contributions; we review it in Chapter 9, "Updating the Eclipse IDE."</p><p> All of these basic ser
29、vices are implemented as plug-ins on a very small kernel. The Eclipse design makes everything a plug-in. The intent was to treat all developers (and all plug-ins) the same. This ensures that the facilities are both suffi
30、cient for the platform itself and for any clients.</p><p> 1.1.2. Integrated Development Environment</p><p> The Eclipse IDE provides a common user experience across multi-language and multi-r
31、ole development activities. Other contributed plug-ins that build on this IDE foundation don't need to reinvent the wheel.</p><p> The most significant IDE features are as follows:</p><p>
32、 Shared views. Many Eclipse features share the use of common views for displaying and editing properties, for listing syntax problems found in the code, and for listing work tasks.</p><p> Perspectives. A p
33、erspective collects a related group of views in a layout suited to particular tasks, such as Java development, debugging, and version control.</p><p> Preferences. A centralized dialog gathers preference se
34、tting pages for all plug-ins installed in the workbench.</p><p> Search engine. The platform search engine provides general capabilities for searching resources and presenting results. This facility can be
35、extended with resource-specific search criteria, e.g., for Java, C++, or UML model resources.</p><p> Debugging. Defines a language-independent debug model and UI classes for building debuggers and launcher
36、s.</p><p> Ant project build files. Ant provides general-purpose, flexible build services that can be extended with specialized tasks. The IDE includes an Ant editor and runtime configuration.</p>&l
37、t;p> Team-oriented. Eclipse provides a generic API for integration with version control repositories. Complete support for CVS is included, and plug-ins are available for other vendors' repositories.</p>&
38、lt;p> In Chapter 4, "Customizing Your Workbench," we'll study the use of Eclipse perspectives, views, and preferences. The debugger is covered in Chapter 7, "Debugging Your Code," and Ant buil
39、d files are used in Chapter 12, "Continuous Integration with Ant." The team-oriented capabilities are covered in Chapter 13, "Team Ownership with CVS."</p><p> There are additional Eclip
40、se IDE features that are not provided in a generic way by the platform, but users have learned to expect the following capabilities in editors:</p><p> Synchronized editor and outline. An outline displays a
41、 hierarchical list of constructs in the file being edited. Select an outline item to position the editor at the corresponding location.</p><p> Content Assist. The editor suggests appropriate content to be
42、inserted at the cursor location when the Ctrl+Space key combination is pressed.</p><p> Templates. Code or other text patterns (such as a Java for loop or an HTML table) are defined in templates that are in
43、serted into a file as part of Content Assist.</p><p> Formatter. Syntactic formatting rules are defined and customized in preference settings and are applied to editor selections or entire files.</p>
44、<p> Problems identified on-the-fly. Errors or warnings are identified while typing in the editor and are highlighted by icons and messages in the ruler at the editor left margin.</p><p> We'll u
45、se these features while studying the Java editor in Chapter 5, "Rapid Development," and then we'll see them again while using the Ant build file editor in Chapter 12.</p><p> 1.1.2.1 Java Deve
46、lopment Tools</p><p> Java Development Tools (JDT) are the only programming language plug-ins included with the Eclipse SDK. However, other language tools are available or under development by Eclipse subpr
47、ojects and plug-in contributors. The Eclipse Java development perspective is shown in Figure 1-2.</p><p> Figure 1-2. Eclipse Java development perspective.</p><p> [View full size image]</p
48、><p> Fundamental capabilities provided by the Java tools include the following:</p><p> Editor, outline, Content Assist, templates, and formatting. These general editor features are provided for
49、 Java source files.</p><p> Java views. Several views are provided for navigating and managing Java projects. The Package Explorer view is the cornerstone of the Java perspective, and a specialized Java Bro
50、wsing perspective assists developers in understanding and navigating large, multi-project applications.</p><p> Project Configuration. Extensive support is included for configuring Java project classpaths,
51、dependencies, libraries, compiler options, and many other characteristics.</p><p> Debugger. A rich debugging environment is provided by the Java tools. You can set breakpoints, step through execution, insp
52、ect and set variable values, and change method code during debugging.</p><p> We cover Java project configuration in Chapter 6, "Java Project Configuration," and debugging in Chapter 7. The Java t
53、ools devote special attention to supporting agile development techniques. Section 1.3, "Agile Development with Eclipse," introduces this topic with more detail, and Part 2 of this book, "Getting Agile,&quo
54、t; is dedicated to studying agile development in Eclipse.</p><p> 1.1.2.2 C/C++ Development Tools</p><p> The C/C++ Development Tools (CDT) project is creating a fully functional C and C++ IDE
55、 for the Eclipse platform. The current focus is on developing and deploying on Linux, but this project's leaders are interested in participation from contributors who would like to extend the work in other directions
56、. For example, targeting Windows, Unix, or embedded platforms and providing wizards that assist development with particular library, database, or messaging APIs.</p><p> The CDT 2.0 release includes the fol
57、lowing:</p><p> C/C++ editor. The generic platform text editor is specialized with C/C++ syntax coloring, Content Assist, and formatting.</p><p> C/C++ debugger. A default debugger implementat
58、ion is provided using GDB.</p><p> C/C++ program launcher. Similar to launching Java programs with optional debugging, CDT provides support for launching C/C++ programs.</p><p> C/C++ parser a
59、nd syntax API. The parser is an essential foundation for other plug-in contributions that extend CDT.</p><p> Search engine. General platform search facilities are specialized with C/C++ syntax options that
60、 accurately locate code definitions and references.</p><p> Makefile generator. Similar to the use of Ant in Java development, makefiles are ubiquitous in development of C/C++ projects.</p><p>
61、 Details and downloads are available on the CDT Web site, www.eclipse.org/cdt/.</p><p> 1.1.2.3 Plug-in Development Environment</p><p> The Plug-in Development Environment (PDE) supplies tool
62、s that automate the creation, manipulation, debugging, and deploying of plug-ins. The PDE is part of the Eclipse SDK and is not a separately launched tool. In line with the general Eclipse platform philosophy, the PDE pr
63、ovides a wide variety of platform contributions (e.g., views, editors, wizards, launchers, etc.) that blend transparently with the rest of the Eclipse workbench and assist the developer in every stage of plug-in developm
64、ent w</p><p> PDE perspective. A specialized perspective includes views and shortcuts to commands used most frequently during plug-in development.</p><p> Host Versus Runtime workbench. The wo
65、rkbench that you are running as you develop your plug-in is the host workbench. After you are happy with your plug-in and want to test it, you can launch another workbenchthe runtime workbench. This will utilize the same
66、 plug-ins as the host workbench, but it will also run the plug-ins you were working on in the host workbench.</p><p> Debugging plug-ins. The Java debugger enables complete control while testing plug-ins in
67、 the runtime workbench.</p><p> Packaging plug-ins. Tools for packaging plug-ins and features for distribution to users via an update site are provided.</p><p> This book does not address plug
68、-in development specifically, but all Eclipse capabilities described here are applicable to the PDE. Other books in this series describe patterns for plug-in development (Gamma and Beck, 2004) and cover the details of bu
69、ilding commercial-quality plug-ins (Clayberg and Rubel, 2004).</p><p> 1.1.2.4 Web Tools Platform</p><p> The Web Tools Platform (WTP) project was formally approved by the Eclipse Board in Jun
70、e 2004 and received initial open source code contributions from IBM and Object Web. At the time this book was written, those contributions were being reviewed and assimilated into the first milestone integration build. T
71、his project is of great importance to the Eclipse community and is likely of interest to most readers of this book. It is still in a formative stage; nonetheless, here we review the project's ch</p><p>
72、 The mission of the Web Tools Platform project is to provide a generic, extensible, and standards-based tool platform that builds on the Eclipse platform and other core Eclipse technologies. The project will deliver a co
73、mmon foundation of frameworks and services upon which software providers can create specialized, differentiated offerings for J2EE and Web-centric application development. Key objectives are to enable product innovation
74、with adherence to vendor-neutral standards and technologies w</p><p> The WTP project is composed of two parts. The Web Standard Tools subproject will provide a common infrastructure targeting Web-enabled a
75、pplications. This includes tools for developing three-tier applications (presentation, business, and data logic) and publishing the resulting system artifacts to servers.</p><p> Tools provided by this subp
76、roject will include the following:</p><p> Standard languages. Support will be provided for HTML/XHMTL, XML, XML Schema, Web Services, XQueries, SQL, and other languages used by Web-centric applications.<
77、;/p><p> Editors. Editors will be provided for supported languages, including consistent features for outlines, Content Assist, templates, and formatting.</p><p> Validators. Languages based on X
78、ML will be validated against associated schemas and other semantics from the specifications.</p><p> Server publication. The workbench will provide commands and views for starting, stopping, publishing, and
79、 running applications on multiple target servers.</p><p> The J2EE Standard Tools subproject will provide common infrastructure for developing applications based on J2EE 1.4 specifications targeting J2EE-co
80、mpliant application servers. Deliverables include generic J2EE tools for other Eclipse-based projects and products, and IDE workbench plug-ins that support developing, deploying, testing, and debugging J2EE applications
81、on JCP-compliant servers. The J2EE workbench will support use cases such as developing a JSP page, enhancing the "Pet Store" bluepri</p><p> Tools provided by this subproject will include the foll
82、owing:</p><p> J2EE artifacts. Tools will support EJB, Servlet, JSP, JCA, JDBC, JTA, JMS, JMX, JNDI, and Web Services.</p><p> JSP editor. The editor will support mixed HTML and JSP tags, incl
83、uding JSP tag libraries, plus outline, Content Assist, templates, and formatting.</p><p> JSP refactoring. Java refactoring (e.g., renaming a class, method, or package) will find and refactor dependencies w
84、ithin JSP pages.</p><p> Search facilities. Search criteria are aware of syntax for JSP, XML, and other document types. For example, searching for a method name includes cases where that name is used as a m
85、ethod, but not when used in other text strings.</p><p> Comparison of syntax. Comparing two JSP or XML files considers syntax while identifying logical code constructs, such as when viewing differences betw
86、een two versions of a JSP file in a repository.</p><p> Details and downloads are available on the Web Tools project Web site, www.eclipse.org/webtools/.</p><p> 1.1.3. Rich Client Platform<
87、;/p><p> The Eclipse Rich Client Platform (RCP) is more notable for what it doesn't have than for what it has. Although the Eclipse platform is designed to serve as an open tools platform, it is architecte
88、d so that its components could be used to build just about any client application. The minimal set of plug-ins needed to build a rich client application is collectively known as the Rich Client Platform.</p><p
89、> These rich applications are still based on a dynamic plug-in model, and the UI is built using the same toolkits and extension points. The layout and function of the workbench is under fine-grained control of the pl
90、ug-in developer. When contributing to the IDE, plug-ins are built on the platform SDK workbench. Alternatively, in a rich client application, developers are responsible for defining the application's workbench presen
91、tation.</p><p> The same PDE tools are used when developing any Eclipse plug-in contributions, including RCP applications. See the PDE references previously in Section 1.1.2.3, "Plug-in Development Env
92、ironment," for more information on this topic.</p><p> 1.2. Other Eclipse Projects</p><p> We reviewed the Eclipse runtime platform and several projects that build on the IDE foundation,
93、but there are others that contribute development frameworks and tools. Some of these projects are mature and already in widespread use, while others are just getting started. Additional Eclipse technology projects are no
94、t listed here, such as the aspect-oriented programming plug-ins called AspectJ. Although these topics are beyond the scope of this book, you may find additional tools that facilitate y</p><p> These compone
95、nts can be used to create new Eclipse plug-ins, and many can also be run outside of the Eclipse workbench. For example, the Service Data Objects (SDO) contribute a framework for data exchange in Web Service applications.
96、 The Java IDE capabilities described in this book are used when building applications with these components. The components from each project are packaged as a set of Eclipse plug-ins that is added to your workbench usin
97、g the Eclipse platform update facility.</p><p> Some of the components are illustrated as building blocks in Figure 1-3. The layers show dependencies where a component builds on one or more others. In parti
98、cular, many components build on the capabilities of the Eclipse Modeling Framework (EMF). The dependencies between these components and others in the Eclipse family may be better represented as a graph of relationships i
99、nstead of a layered architecture, but this figure offers a quick overview of the primary building blocks provided by these</p><p> Graphical Editor Framework (GEF). Allows developers to create a rich graphi
100、cal editor from an existing application model. The developer can take advantage of many common operations provided in GEF and/or extend them for a specific domain. GEF employs an MVC (model-view-controller) architecture,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論