# Eclipse e4



## Gast2 (1. Jul 2010)

Hallo zusammen,

wollte mal Fragen ob schon jemand was mit Eclipse e4 gemacht hat und wie die Meinung dazu ist? Wie kritisch der Umstieg ist? Ob sich das Programmierverhalten ändern muss? Und was es noch so gibt?
Neuen Tools, DI, Pojo's, CSS usw.


----------



## Wildcard (1. Jul 2010)

Das Coding ändert sich durch DI massiv, weitgehend zum besseren. Alte Plugins können weitgehend dank Kompatibilitätsschicht weiterbetrieben werden.
e4 ist nicht Eclipse 4.0. e4 ist ein Brutkastenprojekt um neue Ideen auszuprobieren. Die Technologien werden dann nacheinander und je nach Reifegrad in die Eclipse 4.0 Schiene übernommen.
Zu den e4 Technologien zählen:
-Modelled Workbench
-Toolkit Model
-Deklarative UI
-DI
-20 Services
-stärkerer Web Fokus
-Javascript Schnittstellen
-CSS Styling
-flexiblerer Workspace
-überarbeiteter Kern (alle Singletons wurden entfernt)


----------



## Gast2 (1. Jul 2010)

Wildcard hat gesagt.:


> Das Coding ändert sich durch DI massiv, weitgehend zum besseren. Alte Plugins können weitgehend dank Kompatibilitätsschicht weiterbetrieben werden.


Konkret:
1. Das heißt man benötigt kein DI Framework von außen z.B. Spring DM?
2. Bessere Testbarkeit da die Workbench keine Framework Abhänigkeiten hat.
3. keine Singeltons mehr


Wildcard hat gesagt.:


> e4 ist nicht Eclipse 4.0. e4 ist ein Brutkastenprojekt um neue Ideen auszuprobieren. Die Technologien werden dann nacheinander und je nach Reifegrad in die Eclipse 4.0 Schiene übernommen.


Das weiß ich 


Wildcard hat gesagt.:


> -Modelled Workbench


Das heißt? Ich kann mit EMF meine UI machen? Oder einfach über eine UI, sowie bei den extension points, meine Workbench anlegen?



Wildcard hat gesagt.:


> -Toolkit Model
> -Deklarative UI


Bedeutet was genau?



Wildcard hat gesagt.:


> -CSS Styling


Find ich ne gute Sache, hab ich schon mal getestet... Schade nur dass (noch) nicht alle widgets unerstützt werden(Menü, TableHeader).


----------



## Wildcard (2. Jul 2010)

> 1. Das heißt man benötigt kein DI Framework von außen z.B. Spring DM?


Zum einen das, zum anderen werden OSGi Services damit zu first class citizens im DI Context, zu behandeln wie jede andere Injizierte Klasse. Ausserdem brauchst du keine Selection Listener und ähnliches mehr, sondern lässt dir die aktuelle Selektion einfach injizieren.



> Das heißt? Ich kann mit EMF meine UI machen? Oder einfach über eine UI, sowie bei den extension points, meine Workbench anlegen?


Das heißt das du Dinge wie Views, Part Stacks, Perspektiven, Actions, Key Bindings usw. einfach in einem dedizierten EMF Editor verwalten kannst.



> Bedeutet was genau?


Zwei neue Möglichkeiten um GUIs zu entwickeln. 
Toolkit Model:
Abstrahiert von konkreten UI Toolkits ( SWT, Swing, Qt, Web,...). Eine UI mit ihren Widgets wird durch ein EMF Modell erstellt und zur Laufzeit verändert. Du hast also EMF EClasses für zB Labels, oder Buttons. Deren Verhalten kann programmatisch, oder per Javascript (zB für Validierung) bestimmt werden. Willst du das ein Panel durch ein anderes ersetzt wird, einfach das EMF Modell ändern...
Auf dieses Modell werden dann renderer angewandt die eine echte Oberfläche aus dem Modell basteln. Der Default Renderer bei Eclipse wäre dann zB SWT. 

Mit Deklarative UI meine ich die zweite neue Möglichkeit UIs zu erstellen. XWT, ein XML Dialekt um SWT GUIs zu erstellen. Von der Idee her ähnlich wie beispielsweise SwiXML, oder Mozilla's XUL.

Beide Methoden werden wohl mit grafischem Editor ausgeliefert.


----------



## Gast2 (2. Jul 2010)

Hab jetzt mal mit dem e4 herumgespielt... sieht ja echt schon ganz gut aus und ist einiges einfacher geworden vor allem der GUI Aufbau. Einfach Klasse ist dass die Listener weg sind :toll:...
Der Editor zum Commands,Keybindings,Parts zu erstellen ist echt super, fehlen noch ein paar shortcuts... aber sonst ganz cool...

Was ich noch nicht verstanden hab ist, warum man die Parts nicht mehr verschieben kann und hin und her ziehen kann... Außerdem hab ich auch noch nicht gecheckt wo ich meine eigene Klasse fürs DI angeben muss, damit ich die Injecten kann!!! Und mit den ganzen Annotations muss man wahrscheinlich auch ne Weile arbeiten damit man weiß welche man alle braucht ^^... Aber vom Prinzip find ich es einfacher für den Einstieg ...

DIe letzten 2 Methoden mit der UI hab ich noch nicht so verstanden muss ich wohl mal durchlesen und selber machen... Hab wahrscheinlich auch zu wenig mit EMF bis jetzt gemacht muss ich mir eh nocheinmal genau anschauen. Aber den Ansatz mehrere UI Toolkit zu unterstützen hört sich gut an...


----------

