Duke University Program Design & Construction Course Application Development Tools Sherry Shavor

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
ALAR E2 Architecture - Minh Vu1 E2 Plugin Architecture Project Minh Vu Mentor: Craig Thompson CSCE Department, University Of Arkansas.
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.
Web Applications Development Using Coldbox Platform Eddie Johnston.
On the Eclipse Project Mateusz Srebrny 16 February 2004 Warszawa Slides adapted from
Leveraging the Eclipse Ecosystem for the Scientific Community Tony ANSTO Andy ESRF ICALEPCS 2005.
Eclipse Architecture Dwight Deugo Nesa Matic
Android: Hello World Frank Xu Gannon University. Steps Configuration ▫Android SDK ▫Android Development Tools (ADT)  Eclipse plug-in ▫Android SDK and.
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.
On Platform-Plugin Architecture Take Eclipse as an Example 魏恒峰.
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.
WebSphere Studio Portal Toolkit Overview April/2003 Reginaldo Barosa.
1 eclipse the open platform for tool integration.
[________________________] Eclipse project briefing materials. Copyright (c) 2002 International Business Machines Corp. All rights reserved.
© 2005 by IBM; made available under the EPL v1.0 | March 1, 2005 Tim deBoer Gorkem Ercan Extend WTP Server Tools for your.
ECLIPSE and UML Onur Demir
TOOLS FOR DESIGN AND DEVELOPMENT ENVIRONMENTS. Case study - ECLIPSE Lecture notes 3.
Definition of the SDK for FIspace Augusto Morales & Hector Bedón UPM.
® IBM Software Group © 2006 IBM Corporation Kick-start your Java Apps: Free Software, fast development Eclipse IDE, WASCE, DB2 Express-C.
Copyright © IBM Corp., All rights reserved; made available under the EPL v1.0 | March 20, 2008 | Short Talk Standards based systems management: An.
Introduction to Eclipse and Eclipse RCP Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 13, 2006 Argonne National Laboratory, Argonne,
Everything I Always Wanted to Know about Eclipse Harry Koehnemann Rocket Gang Many slides in this presentation can be found at
Model Handling with EMF Eclipse ECESIS Project Model handling with EMF An introduction to the Eclipse Modeling Framework ATLAS group (INRIA & LINA),
Dali JPA Tools. About Dali Dali JPA Tools is an Eclipse Web Tools Platform sub-Project Dali 1.0 is a part of WTP 2.0 Europa coordinated release Goal -
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.
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,
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.
CMSC 466 / 666 Yong Rao Feb. 11, 2004 Revised Mar. 15, 2004.
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.
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.
Eclipse Rich Client Platform Discover the Anatomy of an Application Based On Eclipse Wayne Beaton Evangelist, Eclipse Foundation.
LehighUML Project John Pequeno, Adam Balgach, Sally Moritz & Professor Glenn Blank.
© 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.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
© 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.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Introduction 1 Lars Vogel 4/22/2009.  Who am I?  Eclipse as a platform  What is Eclipse RCP?  Extension Points / Extensions  Equinox  SWT & JFace.
ETICS All Hands meeting B ologna, October , 2006 WP4 Test and Metrics Plugin Framework (WP4) (WP4) Eva TAKACS.
Eclipse.NET An Integration Platform for ProjectIT-Studio João Saraiva IST & INESC-ID (GSI)
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
DEV-21: Embracing OpenEdge ® Architect Sunil S Belgaonkar Software Architect.
Introduction ITEC 420.
Goals Give you a feeling of what Eclipse is.
ATS Application Programming: Java Programming
A (very brief) intro to Eclipse
COSC-4840 Software Engineering
Introduction to Eclipse
Architecture, Components, Configuration
An Introduction to Eclipse
Presentation transcript:

Duke University Program Design & Construction Course Application Development Tools Sherry Shavor

Software Engineering Roles Software engineers wear many hats –Tool developer –Tool user –Customizing / Extending a tool – Tool evaluator

Software Tools Design – Rational Design tools Code –Integrated Development Environments Eclipse Visual Studio WebSphere Studio –Editors –Specialized tools User Interface Database Embedded Transaction Security Change Management / Source code control –CVS –Rational ClearCase –PVCS

Software Tools Test –JUnit –JProbe Documentation –Help – online help, contextual help –Hardcopy –Web sites Build –Ant, home grown tools

Eclipse –Open Source –Java development environment –Integration platform, frameworks –Plug-in development IBM WebSphere application development tools are built on Eclipse –WebSphere Application Developer

Eclipse Terminology Plug-in - smallest unit of Eclipse function –Big example: HTML editor –Small example: Action to create zip files –Demo – (night light component) Extension - a contribution –Example: specific HTML editor preferences –Demo – (night light) Extension point - named entity for collecting “contributions” –Example: extension point for workbench preference UI –Demo – (socket) Eclipse platform –Demo – (power strip)

Eclipse demo Can you see the common function? Functions provided by plug-ins –Views (panes) –Editors –Preference pages –Dialogs –Help –Etc.

Platform Runtime Workspace Help Team Workbench JFace SWT Eclipse Project Java Development Tools (JDT) Their Tool Your Tool Another Tool Eclipse Overview Plug-in Development Environment (PDE) Eclipse Platform Debug

Registration and Implementation XML Java Code <plugin id="com.ibm version="1.0.0" provider-name="IBM"

Eclipse Plug-in Architecture Each plug-in –Contributes to 1 or more extension points –Optionally declares new extension points –Depends on a set of other plug-ins –Contains Java code libraries and other files –May export Java-based APIs for downstream plug-ins –Lives in its own plug-in subdirectory Details spelled out in the plug-in manifest –Manifest declares contributions –Code implements contributions and provides API –plugin.xml file in root of plug-in subdirectory

Plug-in Manifest <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 plugin.xml

Using an Existing Extension Point Find the appropriate extension point (XML) Find out the requirements of that extension point (XML) Write code in Java

Plug-in Development Environment Goal: –To make it easier to develop Eclipse plug-ins –Support self-hosted Eclipse development Plug-in development environment (PDE) –Specialized tools for developing Eclipse plug-ins –Built on Eclipse Platform and JDT –Implemented as Eclipse plug-ins –Included in Eclipse Project releases Separately installable feature Part of Eclipse SDK drops Demo of PDE

PDE Specialized PDE editor for plug-in manifest files

Plug-in Code Generator Generates a plug-in with zero or more extensions. For Example: Menus Editors Views

Fill-in the Blank Generation

PDE PDE runs and debugs another Eclipse workbench 1. Workbench running PDE (host) 2. Run-time workbench (target)

Eclipse Platform Architecture Eclipse Platform Runtime is micro-kernel –All functionality supplied by plug-ins Eclipse Platform Runtime handles start up –Discovers plug-ins installed on disk –Matches up extensions with extension points –Builds global plug-in registry –Caches registry on disk for next time

How to learn a tool Purpose of the tool Terminology Function Extensibility License/Support Sources of information –online –books –magazines –newsgroups

Assignment Select an application development tool you are using. –Examples: Eclipse, Visual Studio, Emacs …. Each student should assume the role of a computer engineer making a recommendation to management that they would or would not like to use the application development tool selected. Create a presentation (approx 5 min in length) to present your recommendation to management (professor). The presentation should include the –pros/cons of the tool including the function, licensing (open source), support aspects, cost etc. Due on the 13th, each student should be prepared to give their presentation.

Where to go for more information Eclipse website – “The Java Developer’s Guide to Eclipse” by Shavor, D’Anjou, Fairbrother, Kehn, Kellerman, McCarthy –Addison Wesley, ISBN