CMSC 466 / 666 Yong Rao Feb. 11, 2004 Revised Mar. 15, 2004.

Slides:



Advertisements
Similar presentations
Extending Eclipse CDT for Remote Target Debugging Thomas Fletcher Director, Automotive Engineering Services QNX Software Systems.
Advertisements

Extending Eclipse Kai-Uwe Mätzel IBM OTI Labs Zurich
©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Java Integrated Development Environments Heather Natour Senior Lead Engineer Blackboard Inc. July 18 th 10:15am.
TPF/Eclipse: A New TPF Application Test Tool for the Eclipse and WebSphere ® Environments Presenter: Thiru Thirupuvanam TPF Users Group May 2003 New Orleans,
Introduction to Eclipse plugin development for CSU 670 course project, Selector language (Xaspect) editor plugin implementation.
Developing an Eclipse Plug-in David Gallardo. Platform Runtime Workspace Help Team Workbench JFace SWT Eclipse Project Java Development Tools (JDT) Their.
Goals Give you a feeling of what Eclipse is.
On the Eclipse Project Mateusz Srebrny 16 February 2004 Warszawa Slides adapted from
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of The Eclipse Web Tools Platform.
Eclipse Architecture Dwight Deugo Nesa Matic
Eclipse Introduction Dwight Deugo Nesa Matic
Eclipse Paolo Gasti. The Problem ■ There is the need for a new development environment ■ It has to help software designers and implementers to do their.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Views Dwight Deugo Nesa Matic
1 Plug-in Development Environment (PDE) Guide. 2 Introduction to PDE l What is PDE: »a tool designed to help you develop platform plug-ins while working.
Enhancing Developer Productivity using Eclipse Presented by: Tom Sausner.
[________________________] Eclipse project briefing materials. Copyright (c) 2002, 2003 IBM Corporation and others. All rights reserved. This.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
03 Using Eclipse. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as.
SEEM4570: XAMPP, Eclipse, Summary of Html Kangfei Zhao Room 711,ERB
Standardize on Team Foundation Server across the enterprise with Teamprise Corey Steffen General Manager
[________________________] Eclipse project briefing materials. Copyright (c) 2002 International Business Machines Corp. All rights reserved.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
ECLIPSE and UML Onur Demir
Duke University Program Design & Construction Course Application Development Tools Sherry Shavor
October 30, 2007S. Weigert / Y. HAN1 Working with Eclipse-Ingres RUBIS Autumn 2007.
Jan Hatje, DESY CSS ITER March 2009: Alarm System, Authorization, Remote Management XFEL The European X-Ray Laser Project X-Ray Free-Electron.
TOOLS FOR DESIGN AND DEVELOPMENT ENVIRONMENTS. Case study - ECLIPSE Lecture notes 3.
Definition of the SDK for FIspace Augusto Morales & Hector Bedón UPM.
Capture and Replay Often used for regression test development –Tool used to capture interactions with the system under test. –Inputs must be captured;
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Everything I Always Wanted to Know about Eclipse Harry Koehnemann Rocket Gang Many slides in this presentation can be found at
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
The Eclipse IDE Gareth Davies. Relevant Bio Professional Developer since 1994 Mostly Microsoft platform, using successive versions of Visual Studio Serious.
The Eclipse Ecosystem: Exploring Tools and Plug-ins David Gallardo.
Extending the Eclipse Framework and Rich Client Platform Jeff Myers Languages for Lunch 10/13/2004.
Ontology Engineering and Plugin Development with the NeOn Toolkit Plug-in Development for the NeOn Toolkit June 1st, 2008 Michael Erdmann, Peter Haase,
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Introduction to Eclipse CSC 216 Lecture 3 Ed Gehringer Using (with permission) slides developed by— Dwight Deugo Nesa Matic
TOOLS FOR DESIGN AND DEVELOPMENT ENVIRONMENTS. Case study - ECLIPSE Lecture notes 2.
Jan Hatje, DESY CSS ITER March 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
[________________________] Eclipse project briefing materials. Copyright (c) 2002, 2003 IBM Corporation and others. All rights reserved. This.
Eclipse Eclipse An IDE is an Integrated Development Environment Different IDEs meet different needs – BlueJ, DrJava are designed as teaching.
A (very brief) intro to Eclipse Boyana Norris June 4, 2009.
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary June, 2011 Made available under the Eclipse Public License v Mobile.
Eclipse 24-Apr-17.
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
© 2008 by Shawn Spiars; made available under the EPL v1.0 | March 17, 2008 Case Study – Phurnace Software and RCP Shawn Spiars Lead UI Developer Phurnace.
© 2002 IBM Corporation Transaction Processing Facility TPF Users Group Acapulco May 2004 © 2004 IBM Corporation Pete Nicholls IBM Toronto Lab TPF Toolkit.
Jan Hatje, DESY CSS GSI Feb. 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
Jan Hatje, DESY CSS – Control System Studio EPICS collaboration meeting CSS – Control System Studio Update EPICS collaboration meeting 2008 Shanghai.
Introduction 1 Lars Vogel 4/22/2009.  Who am I?  Eclipse as a platform  What is Eclipse RCP?  Extension Points / Extensions  Equinox  SWT & JFace.
Developing GUIs With the Eclipse Visual Editor, SWT Edition David Gallardo.
An EPICS IDE Using Eclipse Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 15, 2006 Argonne National Laboratory, Argonne, IL.
Eclipse 27-Apr-17.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
Eclipse.
Goals Give you a feeling of what Eclipse is.
ATS Application Programming: Java Programming
A (very brief) intro to Eclipse
COSC-4840 Software Engineering
Architecture, Components, Configuration
Eclipse Database Plug-ins
An Introduction to Eclipse
Presentation transcript:

CMSC 466 / 666 Yong Rao Feb. 11, 2004 Revised Mar. 15, 2004

TOPICS Project Requirement Project Requirement Introduction to Eclipse Introduction to Eclipse

Project Requirement Please send an to Please send an to about your about your 1. group members 1. group members 2. company name and a brief introduction 2. company name and a brief introduction

Expected Project An fully functional on-line site for your proposed company An fully functional on-line site for your proposed company

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

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

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

Introduction to Eclipse overview.pdf overview.pdf overview.pdf overview.pdf lipse-slides.ppt lipse-slides.ppt lipse-slides.ppt lipse-slides.ppt

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

Brief History of Eclipse 1999 April- Work begins on Eclipse inside OTI/IBM 2000 June - Eclipse Tech Preview ships 2001 March- opens June- Eclipse 0.9 ships October- Eclipse 1.0 ships November- IBM donates Eclipse source base - eclipse.org board announced - opens June- Eclipse 2.0 ships September- Eclipse ships November- Eclipse ships 2003 March- Eclipse 2.1 ships March- Eclipse 2.1 ships

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

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

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

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

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

PDE templates for creating simple plug-in projects

PDE editor for plug-in manifest files

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

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

Java-centric view of files in Java projects

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

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”

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

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

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

SWT : Authentic native windows look and feel

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

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

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

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

Debug Component

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

Help Component

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, …

Thank you. Thank you.