Eclipse Magazin 6.11
Keine Kommentare

Eclipse spricht Java 7

Erhältlich ab: September 2011
Umfang: 98 Seiten Seiten
Autoren / Autorinnen:
Christian Arndt, Wayne Beaton, Max Bureck, Andreas Graf, Jonas Helming, Jens Hildebrand, Stefan Janisch, Michael Jastram, Maximilian Kögel, Kaloyan Raev, Jan Reimann, Zeb Ford-Reitz, Rainer Ruppersberg, Alexandra Schladebeck, Mirko Seifert, Marc Teufel, Gunnar Wagenknecht, Marc-Florian Wendland, Wolfgang Werner

Magazin


Was ist Eclipse?
Open Source, Eclipse Foundation, EPL und das Eclipse-Ökosystem
Wayne Beaton, Jonas Helming und Maximilian Kögel


The Making of an Eclipse Project
Waking up to EclipseLink
Zeb Ford-Reitz


Titelthema


Sieben
Java-7-Support in den Java Development Tools
Marc Teufel


„Das größte Thema in Indigo war natürlich Java 7.“
Im Gespräch mit JDT Project Lead Daniel Megert


Runtime


Strom allein ist nicht genug
Zukunftssicher unterwegs mit OSGi und REST
Wolfgang Werner


Von Swing nach RCP/RAP
Portierung einer Swing-Anwendung nach Eclipse RCP/RAP
Rainer Ruppersberg


Eclipse Libra
Zusammenarbeit von WTP und PDE
Kaloyan Raev


Cloud Computing


Eclipse Gyrex
Platform as a Service für die eigene Cloud
Gunnar Wagenknecht


Cloud Computing
Evaluierung der Cloud-Lösungen von Google, Microsoft und Amazon
Stefan Janisch


Interview


EclipseLink goes Cloud
Doug Clarke über EclipseLink 2.3.0


Business Intelligence mit Eclipse
BIRT versus Jaspersoft Studio


Testen


Clever Testen: Jubeln mit Jubula
Automatisierte GUI-Tests mit Intelligenz, Durchhaltevermögen und einem leichten Touch Paranoia
Alexandra Schladebeck


GUI-Tests für Web- und AJAX Applikationen
Umsetzung automatisierter Oberflächentests
Christian Arndt


Automatisierung modellbasierter Tests
Fokus!MBT und ModelBus
Marc-Florian Wendland und Max Bureck


Development


WindowBuilder
Niemand hat die Absicht eine Mauer zu bauen, ...
Jan Reimann


Wrappable Buttons
Mehrzeiliger Text auf Schaltflächen
Jens Hildebrand


Modeling


Requirements Modeling Framework
Anforderungsmanagement mit RMF und ProR
Michael Jastram und Andreas Graf


3, 2, 1, Launch, Suspend, Resume, Terminate
Interpreter und Debugger für DSLs: Generieren statt implementieren
Mirko Seifert


Eclipse spricht Java 7


Viel ist bereits geschrieben worden über Java 7, die nach fünf Jahren nun endlich vorliegende Neuauflage von Java. Von der Idee des „großen“ Updates hat sich Oracle bekanntlich verabschiedet und den Plan B gewählt, zunächst ein relativ bescheidenes Feature-Set in Java 7 umzusetzen. Java 8 soll dann 2012 die großen Baustellen angehen, insbesondere die Einführung von Lambda-Ausdrücken, auch unter dem Stichwort „Closures“ bekannt, und ein System zur Modularisierung des JDK („Project Jigsaw“). „Das Bemerkenswerteste an Java 7 ist, dass wir es veröffentlicht haben“, kommentiert denn auch Oracles Java-Sprachingenieur Mark Reinhold und trifft damit die Stimmung der Community, die sich nach Monaten des Stillstands über die Weiterentwicklungen freut: „Einige der Neuerungen in Java 7 könnten sich als nützlich erweisen“, sagen beispielsweise 31 % der Teilnehmer an unserem JAXenter-Quickvote. Für 29 % ist Java 7 zwar „nicht weltbewegend, aber dennoch ein wichtiges Release auf dem Weg zu Java 8“. Irrelevant ist Java 7 nur für 9 % (S. 75).


Haben Sie sich die neuen Möglichkeiten von Java 7 schon angeschaut? Da wäre zunächst einmal das „Project Coin“ zu nennen, eine Sammlung kleinerer Spracherweiterungen, die den Entwickleralltag versüßen sollen. Dazu gehören Strings in switch-Anweisungen, verbesserte Schreibweisen für numerische Literale, Vereinfachungen beim Aufruf von Methoden mit variabler Argumentenliste, überarbeitete Type Inferences für Konstruktoren generischer Typen („Diamond Operator“), ein verbessertes Exception Handling und das automatische Resource Management. Ergänzungen zum Concurrency Support des JDK sind unter dem JSR 166y einge ossen. Dabei handelt es sich im Wesentlichen um ein Framework für die Parallelisierung rekursiver Aufgaben (Fork/Join Framework). Java 7 bringt zudem eine Reihe von Updates im Bereich der Internationalisierung (etwa Support für Unicode 6.0), ein neues File System API (NIO.2) und Unterstützung diverser Protokolle wie IPv6, Stream Control Transmission Protocol (SCTP), Socket Direct Protocol (SDP) und Transport Layer Security (TLS). Ein Novum stellt das so genannte InvokeDynamic-Feature dar, da es zum ersten Mal neuen Bytecode in Java einbringt. Es geht darum, den Aufruf von Methoden zu ermöglichen, ohne Prüfung, zu welcher Klasse die Methode gehört, von welchem Typ ihr Rückgabewert ist oder welche Methodenparameter sie verwendet. InvokeDynamic zielt indes nicht auf Java-Entwickler ab, sondern auf alternative Sprachen für die JVM, die dynamisch geprüft werden und in denen Methoden keine zur Übersetzungszeit festgelegte Signatur haben.


Schauen Sie sich die neuen Funktionen von Java 7 also ruhig einmal genauer an. Und wo ginge dies besser, als in Ihrer präferierten Entwicklungsumgebung, wo ginge das besser, als in Eclipse? Denn Spezifizieren (JCP/JSR) und Implementieren (JDK) ist das eine, zu tun haben Sie selbst mit Java 7 wohl vor allem in Ihrer IDE, die Sie tagtäglich einsetzen. Wie genau Java 7 in den Eclipse Java Development Tools (JDT) unterstützt wird, ist deshalb Titelthema dieser Ausgabe des Eclipse Magazins. Wie nah das Eclipse-Team dabei am Ort des Spezi zierungsgeschehens ist, zeigt die Tatsache, dass die JDT-Entwickler nicht nur den Compiler an Java 7 angepasst und neue Features, wie z. B. Quick Fixes hinzugefügt haben, sondern auch einen aktiven Vertreter in der Expertengruppe des JSR-334 Project Coin hatte, wo die kleinen Sprachänderungen für Java 7 definiert wurden. So war das wichtigste Betätigungsfeld für das JDT-Team im letzten Jahr klar der Java-7-Support, teilt uns JDT Project Lead Daniel Megert auf S. 20 mit. Da allerdings das große Eclipse Update 3.7 (aka Indigo) kurz vor der Freigabe von Java 7 lag, konnte das JDT-Team vorerst keinen Java-7-Support für die Java Development Tools des Indigo Release garantieren. Diesen Java-7-Support, so hatte man entschieden, wolle man bald möglichst über Patches nachliefern. Mittlerweile ist der Java-7- Support Bestandteil aller regulären 3.7.1, 3.8, 4.1.1 und 4.2 Builds. Sie finden in dieser Ausgabe alles, um sich intensiv mit Java 7 und dessen Niederschlag in Eclipse vertraut zu machen. Die fünf Bonusartikel auf der beiliegenden Heft-CD versorgen Sie mit dem nötigen Basiswissen zu Java 7. Marc Teufel geht dann auf S. 14 explizit auf die neuen Java-7-Funktionen und Quick Fixes in Eclipse JDT ein. Daniel Megert liefert interessante Hintergrundinfos und gibt einen Ausblick auf die nun anstehenden Arbeiten am Support für Java 8.


Viel Spaß bei der Lektüre wünscht


Hartmut Schlosser, Redakteur


Exklusiv auf CD: Video von der Jax 2011


Was ist neu bei der Eclipse Rich Client Platform 4.0? von Kai Tödter


Kai gibt in dieser Session einen Überblick über die neuen Features der Eclipse 4.0 Rich Client Platform (RCP). Folgende Themen werden vorgestellt: Einführung und „Hello, World“-RCP-4.0- Applikation, das Workbench-Modell (inklusive Toolbar, Menü, Parts, Commands und Handlers), Dependency Injection, e4 Services, Look-and-Feel-Anpassungen mit CSS, dynamisches Theme-Switching und vieles mehr.


Die Highlights


5 Bonusartikel Java Tech Journal: Schwerpunkt Java 7


• Java 7 – Project Coin
• Bringing Java 7 Support to IntelliJ IDEA 10.5
• Java the Language vs. Java the Platform
• Java 7: The Top 8 Features
• Using Try-With-Resources in Java SE 7


Eclipse Libra


Im Rahmen des Eclipse Indigo Release Trains erschien die erste Version 0.1 von Eclipse Libra, einem Projekt, mit dem das Eclipse PluginDevelopment Environment (PDE) mit der populären Web Tools Platform (WTP) zusammengebracht werden soll. Die initiale Version führt die grundlegenden Features ein: OSGi Bundle Facet und WAR Products, die im Artikel auf S. 35 ausführlich beschrieben werden.


Weitere Inhalte


Eclipse Jubula Functional Testing Tool


Jubula ist ein Werkzeug für automatisierte GUI Tests von Java- und HTML-Anwendungen.


Eclipse BIRT 3.7.0


BIRT ist ein Business Intelligence and Reporting Tool für die Entwicklung und das Deployment von Business-Intelligence-Anwendungen in Java/Java-EE-Umgebungen.


Eclipse Gyrex 0.10


Gyrex ist eine OSGi-basierte Serveranwendung und ermöglicht das Erstellen von dynamischen und erweiterbaren Equinox-basierten Serverlösungen.



Weitere Ausgaben

X
- Gib Deinen Standort ein -
- or -