Download presentation
Presentation is loading. Please wait.
Published byNorma Sanders Modified over 8 years ago
1
CMSC 466 / 666 Yong Rao Feb. 11, 2004 Revised Mar. 15, 2004
2
TOPICS Project Requirement Project Requirement Introduction to Eclipse Introduction to Eclipse
3
Project Requirement Please send an email to yongrao1@cs.umbc.edu Please send an email to yongrao1@cs.umbc.eduyongrao1@cs.umbc.edu about your about your 1. group members 1. group members 2. company name and a brief introduction 2. company name and a brief introduction
4
Expected Project An fully functional on-line site for your proposed company An fully functional on-line site for your proposed company
5
Project Requirement Client Presentation logic : JSP, ASP, PHP etc. Client Presentation logic : JSP, ASP, PHP etc. Business Logic: Java Beans, Java Servlets or other applications etc. Business Logic: Java Beans, Java Servlets or other applications etc. Database server : Oracle, MySql, MS SQL server etc. Database server : Oracle, MySql, MS SQL server etc. Choose the one that best matches your business Choose the one that best matches your business
6
Presentation Schedules Please turn in the following things at least 1 day before your presentation Please turn in the following things at least 1 day before your presentation 1. Final Project report modeled by standards of scientific publication. 1. Final Project report modeled by standards of scientific publication. 2. Group member contribution log. 2. Group member contribution log. 3. Source codes (optional ) 3. Source codes (optional ) Please make a demo on the day right before or after your class presentation Please make a demo on the day right before or after your class presentation
7
Beyond these… Business Setup Business Setup Why do you want to setup this company Why do you want to setup this company Where will you register and host your site Where will you register and host your site What functionalities you will provide What functionalities you will provide and more... and more... Business Model Selection Business Model Selection Why you select a certain model Why you select a certain model Supporting Technology selection Supporting Technology selection Why you choose certain technologies Why you choose certain technologies Detailed implementation Detailed implementation Show your work Show your work
8
Introduction to Eclipse http://www.eclipse.org http://www.eclipse.org http://www.eclipse.org http://www.eclipse.org/downloads/index.php http://www.eclipse.org/downloads/index.php http://www.eclipse.org/downloads/index.php http://www.eclipse.org/whitepapers/eclipse- overview.pdf http://www.eclipse.org/whitepapers/eclipse- overview.pdf http://www.eclipse.org/whitepapers/eclipse- overview.pdf http://www.eclipse.org/whitepapers/eclipse- overview.pdf http://www.eclipse.org/eclipse/presentation/ec lipse-slides.ppt http://www.eclipse.org/eclipse/presentation/ec lipse-slides.ppt http://www.eclipse.org/eclipse/presentation/ec lipse-slides.ppt http://www.eclipse.org/eclipse/presentation/ec lipse-slides.ppt
9
Eclipse Origins Eclipse created by OTI and IBM teams responsible for IDE products Eclipse created by OTI and IBM teams responsible for IDE products IBM VisualAge/Smalltalk (Smalltalk IDE) IBM VisualAge/Smalltalk (Smalltalk IDE) IBM VisualAge/Java (Java IDE) IBM VisualAge/Java (Java IDE) IBM VisualAge/Micro Edition (Java IDE) IBM VisualAge/Micro Edition (Java IDE) Initially staffed with 40 full-time developers Initially staffed with 40 full-time developers Geographically dispersed development teams Geographically dispersed development teams OTI Ottawa, OTI Minneapolis, OTI Zurich, IBM Toronto, OTI Raleigh, IBM RTP, IBM St. Nazaire (France) OTI Ottawa, OTI Minneapolis, OTI Zurich, IBM Toronto, OTI Raleigh, IBM RTP, IBM St. Nazaire (France) Effort transitioned into open source project Effort transitioned into open source project IBM donated initial Eclipse code base IBM donated initial Eclipse code base Platform, JDT, PDE Platform, JDT, PDE
10
Brief History of Eclipse 1999 April- Work begins on Eclipse inside OTI/IBM 2000 June - Eclipse Tech Preview ships 2001 March- http://www.eclipsecorner.org/ opens http://www.eclipsecorner.org/ June- Eclipse 0.9 ships October- Eclipse 1.0 ships November- IBM donates Eclipse source base - eclipse.org board announced - http://www.eclipse.org/ opens http://www.eclipse.org/ 2002 June- Eclipse 2.0 ships September- Eclipse 2.0.1 ships November- Eclipse 2.0.2 ships 2003 March- Eclipse 2.1 ships March- Eclipse 2.1 ships
11
Introduction to Eclipse Eclipse is a universal platform for integrating development tools Eclipse is a universal platform for integrating development tools Open, extensible architecture based on plug-ins Open, extensible architecture based on plug-ins Java VM Standard Java2 Virtual Machine Platform Eclipse Platform PDE Plug-in development environment Java development tools JDT
12
Eclipse Plug-in Architecture Plug-in A Plug-in A Declares extension point P Declares extension point P Declares interface I to go with P Declares interface I to go with P Plug-in B Plug-in B Implements interface I with its own class C Implements interface I with its own class C Contributes class C to extension point P Contributes class C to extension point P Plug-in A instantiates C and calls its I methods Plug-in A instantiates C and calls its I methods plug-in A plug-in B class C interface I extension point P extension contributes creates, calls implements
13
Eclipse Plug-in Architecture <plugin id = “com.example.tool" name = “Example Plug-in Tool" class = "com.example.tool.ToolPlugin"> <page id = "com.example.tool.preferences" icon = "icons/knob.gif" title = “Tool Knobs" class = "com.example.tool.ToolPreferenceWizard“/> Declare contribution this plug-in makes Declare new extension point open to contributions from other plug-ins Location of plug-in’s code Other plug-ins needed Plug-in identification
14
Plug-in Architecture - Summary All functionality provided by plug-ins All functionality provided by plug-ins Includes all aspects of Eclipse Platform itself Includes all aspects of Eclipse Platform itself Communication via extension points Communication via extension points Contributing does not require plug-in activation Contributing does not require plug-in activation Packaged into separately installable features Packaged into separately installable features Downloadable Downloadable
15
Plug-in Development Environment PDE = Plug-in development environment PDE = Plug-in development environment Specialized tools for developing Eclipse plug-ins Specialized tools for developing Eclipse plug-ins Built atop Eclipse Platform and JDT Built atop Eclipse Platform and JDT Implemented as Eclipse plug-ins Implemented as Eclipse plug-ins Using Eclipse Platform and JDT APIs and extension points Using Eclipse Platform and JDT APIs and extension points Included in Eclipse Project releases Included in Eclipse Project releases Separately installable feature Separately installable feature Part of Eclipse SDK drops Part of Eclipse SDK drops
16
PDE templates for creating simple plug-in projects
17
PDE editor for plug-in manifest files
18
PDE - Summary PDE makes it easier to develop Eclipse plug-ins PDE makes it easier to develop Eclipse plug-ins PDE also generates Ant build scripts PDE also generates Ant build scripts Compile and create deployed form of plug-in Compile and create deployed form of plug-in
19
Java Development Tools JDT = Java development tools JDT = Java development tools State of the art Java development environment State of the art Java development environment Built atop Eclipse Platform Built atop Eclipse Platform Implemented as Eclipse plug-ins Implemented as Eclipse plug-ins Using Eclipse Platform APIs and extension points Using Eclipse Platform APIs and extension points Included in Eclipse Project releases Included in Eclipse Project releases Available as separately installable feature Available as separately installable feature Part of Eclipse SDK drops Part of Eclipse SDK drops
20
Java-centric view of files in Java projects
21
Eclipse JDT - Summary JDT is a state of the art Java IDE JDT is a state of the art Java IDE Java views, editor, refactoring Java views, editor, refactoring Helps programmer write and maintain Java code Helps programmer write and maintain Java code Java compiler Java compiler Takes care of translating Java sources to binaries Takes care of translating Java sources to binaries Java debugger Java debugger Allows programmer to get inside the running program Allows programmer to get inside the running program
22
Eclipse Platform Eclipse Platform is the common base Eclipse Platform is the common base Consists of several key components Consists of several key components Platform Runtime Eclipse Platform Workspace Workbench SWT JFace TeamHelp Debug Ant “Core” “UI”
23
Workspace Component Workspace holds 1 or more top- level projects Workspace holds 1 or more top- level projects Tree of folders and files Tree of folders and files
24
Workbench Component SWT – generic low-level graphics and widget set SWT – generic low-level graphics and widget set JFace – UI frameworks for common UI tasks JFace – UI frameworks for common UI tasks Workbench – UI personality of Eclipse Platform Workbench – UI personality of Eclipse Platform Workbench SWT JFace
25
SWT SWT = Standard Widget Toolkit SWT = Standard Widget Toolkit Generic graphics and GUI widget set Generic graphics and GUI widget set buttons, lists, text, menus, trees, styled text... buttons, lists, text, menus, trees, styled text... Simple Simple Small Small Fast Fast OS-independent API OS-independent API Uses native widgets where available Uses native widgets where available Emulates widgets where unavailable Emulates widgets where unavailable
26
SWT : Authentic native windows look and feel
27
JFace JFace is set of UI frameworks for common UI tasks JFace is set of UI frameworks for common UI tasks Designed to be used in conjunction with SWT Designed to be used in conjunction with SWT Classes for handling common UI tasks Classes for handling common UI tasks API and implementation are window-system independent API and implementation are window-system independent
28
JFace APIs Image and font registries Image and font registries Dialog, preference, and wizard frameworks Dialog, preference, and wizard frameworks Structured viewers Structured viewers Model-aware adapters for SWT tree, table, list widgets Model-aware adapters for SWT tree, table, list widgets Text infrastructure Text infrastructure Document model for SWT styled text widget Document model for SWT styled text widget Coloring, formatting, partitioning, completion Coloring, formatting, partitioning, completion Actions Actions Location-independent user commands Location-independent user commands Contribute action to menu, tool bar, or button Contribute action to menu, tool bar, or button
29
Workbench Component Workbench is UI personality of Eclipse Platform Workbench is UI personality of Eclipse Platform UI paradigm centered around UI paradigm centered around Editors Editors Views Views Perspectives Perspectives
30
Team Component Version and configuration management (VCM) Version and configuration management (VCM) Share resources with team via a repository Share resources with team via a repository Repository associated at project level Repository associated at project level Extension point for new types of repositories Extension point for new types of repositories Repository provider API and framework Repository provider API and framework Eclipse Platform includes CVS repository provider Eclipse Platform includes CVS repository provider Available repository providers* Available repository providers* ChangeMan (Serena)- AllFusion Harvest (CA) ChangeMan (Serena)- AllFusion Harvest (CA) ClearCase (Rational)- Perforce ClearCase (Rational)- Perforce CM Synergy (Telelogic)- Source Integrity (MKS) CM Synergy (Telelogic)- Source Integrity (MKS) PVCS (Merant)- TeamCode (Interwoven) PVCS (Merant)- TeamCode (Interwoven) Microsoft Visual Source Safe Microsoft Visual Source Safe
31
Debug Component
32
Ant Component Eclipse incorporates Apache Ant Eclipse incorporates Apache AntApache AntApache Ant Ant is Java-based build tool Ant is Java-based build tool “Kind of like Make…without Make's wrinkles” “Kind of like Make…without Make's wrinkles” XML-based build files instead of makefiles XML-based build files instead of makefiles Available from workbench External Tools menu Available from workbench External Tools menu Run Ant targets in build files inside or outside workspace Run Ant targets in build files inside or outside workspace PDE uses Ant for building deployed form of plug-in PDE uses Ant for building deployed form of plug-in
33
Help Component
34
Eclipse Platform - Summary Eclipse Platform is the nucleus of IDE products Eclipse Platform is the nucleus of IDE products Plug-ins, extension points, extensions Plug-ins, extension points, extensions Open, extensible architecture Open, extensible architecture Workspace, projects, files, folders Workspace, projects, files, folders Common place to organize & store development artifacts Common place to organize & store development artifacts Workbench, editors, views, perspectives Workbench, editors, views, perspectives Common user presentation and UI paradigm Common user presentation and UI paradigm Key building blocks and facilities Key building blocks and facilities Help, team support, internationalization, … Help, team support, internationalization, …
35
Thank you. Thank you.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.