Open Source & Eclipse 4

55
The Eclipse Ecosystem and E4, Eclipse Users Group Belgium The Eclipse Ecosystem and E4, Eclipse Users Group Belgium Eclipse from Present to Future Wim Jongman Industrial-TSI

description

Open source and E4 (Eclipse 4) presentation given at Belgium Eclipse User Group, March 2010.

Transcript of Open Source & Eclipse 4

Page 1: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group BelgiumThe Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Eclipse from Present to Future

Wim Jongman

Industrial­TSI

Page 2: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Topics

This Presentation is About

Us (a little bit);

Open Source & Business

the Eclipse Ecosystem;

the Eclipse Rich Client Platform and

Eclipse 4

Page 3: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Acknowledgements & CopyrightsAssembled by Industrial­TSI @wimjongman

Copyrights

Industrial­TSI

Eclipse Foundation

IBM

Soyatec

www.freedigitalphotos.net Images

Various Pictures from the Web

Copyright belongs to the respective owners

Page 4: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

About Industrial­TSIOpen Source Service Provider

Software Development Lifecyle

Bugzilla, OTRS, TRAC, Mylyn

Eclipse

Junit, SWTBot, Findbugs, Profiling, Code Coverage 

Ant, Maven, Hudson, Cruise Control

Open Source Middleware Integration

OSGi, ECF, BIRT, EMF, etc..

Systems Management

Load Checking, Bacula

Office

Zarafa, OTRS,

Open Source SOA

Sopera, Project Swordfish

Page 5: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group BelgiumThe Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 6: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 7: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 8: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 9: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 10: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 11: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 12: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 13: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 14: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Source & Business

Page 15: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group BelgiumThe Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 16: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 17: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 18: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 19: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 20: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 21: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Page 22: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

The Eclipse Ecosystem

Consumers where are youConsumenten waar zijn jullie

消費者你在哪裡Verbraucher wo sind Sie      أنت  أين المستهلكينkuluttaja jos olet

,   καταναλωτές όταν είστε

Page 23: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Das Eclipse Ecosystem

Page 24: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group BelgiumThe Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Eclipse Rich Client Platform (E3)

Page 25: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium2525

Eclipse RCP

Page 26: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium2626

Eclipse RCP

Page 27: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium2727

Eclipse RCP

Page 28: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium2828

Eclipse BIRT

Page 29: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium2929

Eclipse Data Tools

Device Development

Mobile Tools for Java

eSWT

eRCP

RSE

Eclipse 

JDT

PDE

E4

Platform

RCP

Page 30: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3030

Eclipse Modeling 

EMF

GMF

XTeXt

Eclipse Runtime

ECF

Equinox

Jetty

EclipseLink

RAP

SOA

Swordfish

Page 31: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3131

Eclipse Techno

DLTK

GEF (3D)

SWTBOT

Voice Tools

OHF

OFMP

Nebula

Page 32: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3232

Eclipse Tools

Orbit

Ajax

GEF

Mylyn

Buckminster

TPTP

Reference

Web Tools

JSF

DALI Persistance

Webservice Tools

Page 33: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3333

Third Party

Google

GWT

Android Dev tools

ZEND

PHP Studio

Sopera

OS SOA

And many more

Page 34: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3434

Future of Eclipse Projects

Many new projects arrive

Not easy to be an Eclipse project

IDE Focus

IP Due Dilligence take a lot of time

Eclipse Marketplace

New website

Integration in Eclipse

Eclipse Forge

Home for the rest of us

No IP problems

Page 35: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3535

Page 36: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group BelgiumThe Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Eclipse Rich Client Platform (e4)

Page 37: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

e4

“Advancing the king's pawn up two squares is highly useful because it occupies a center square, attacks the center square d5, and allows the development of White's king's bishop and queen.” (Wikipedia)

3737

Page 38: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3838 © 2009 IBM 

Corporation38

The Challenge

Tension between Stability and Innovation

We need to innovate to remain a viable platform

Page 39: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium3939

e4

“The mission of the e4 project is to build a next generation platform for pervasive, component­based applications and tools.”

Page 40: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium404040

e4 – Purpose

Place for innovation

Not a product

e4 technologies will be used as the basis of Eclipse 4.0(and some will show up in 3.x)

Engage open source community

Build a better Eclipse

Make it more flexible and easier to use

Prepare for web technologies

Page 41: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium4141

e4 – Work Areas

Building UI Components

Using HTML/JavaScript, OpenSocial

XWT: declarative SWT

Easier to use API (20% covering 80% of the cases)

Assembling UI Components

Based on EMF model (modeled workbench)

Better control over result (filtering, sorting, etc)

Skinnable UI (CSS, Renderer)

Visual tool for assembling? (community contribution)

Other

Flexible Resources (  3.6), JS Modularity→

Page 42: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium4242

Backwards Compatibility

e4

CompatibilityLayer

Existing plug­ins

"pure e4" plug­ins

Page 43: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium434343

e4 – Expectations

Slow down, we only moved e2­e4!!

Page 44: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

e4 – Where to get it

444444

Page 45: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

XWT 

Page 46: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

XWT 

Page 47: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

XWT Demo

Editor

Applications

Element

Standalone

RCP Products

Page 48: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

CSS 

Page 49: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

CSS

Text {

font: Verdana 8px;

}      

Label {

font: Verdana 8px;

}

Tree {

font: Verdana 8px;

}

Shell, Button, Label {

    background­color: rgb(48,48,48);

    color: rgb(240,240,240);

}

SashForm {

    background­color: rgb(48,48,48);

}

Page 50: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

CSS

public class DarkThemeHandler {

public void execute(MApplication application) {

 for (MWindow window : application.getChildren()) {

   ThemeUtil.switchTheme(window, "dark­gradient.css");

 }

}

Page 51: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

CSS

try {

shell.setRedraw(false);

shell.reskin(SWT.ALL);

} finally {

shell.setRedraw(true);

}

Page 52: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Social Gadgets 

CTRL+3

Page 53: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Open Social Gadgets 

Frogger!!

Twitter.

Page 54: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Questions?

Page 55: Open Source & Eclipse 4

The Eclipse Ecosystem and E4, Eclipse Users Group Belgium

Eclipse Training Series

http://wiki.eclipse.org/Training_Schedule