Java Magazin 2.13

Umfang: 100 Seiten

Erhältlich ab: 2013-01-06 00:00:00

Autoren: Caroline Buck, Lars Drießnack, Thilo Frotscher, Werner Gross, Sven Haiges, Tam Hanna, Martin Heimrich, Marek Iwaszkiewicz, Arne Limburg, Bernhard Löwenstein, Daniel Lübke, Michael Müller, Jörg Pechau, Monika Popp, Lars Röwekamp, Sven Schirmer, Berthold Schulte, Dirk Schüpferling, Jens Schumann, Michael Seemann, Eugen Seer, János Vona, Martin Winandy

Sie werden zu unserer Partnerseite entwickler.de weitergeleitet

Magazin

News

Bücher: Produktive Softwareentwicklung

Bücher: Kanban in der IT

Logging light 
tinylog: schlanke log4j-Alternative für Java
von Martin Winandy

Titelthema

Java EE 7 im Überblick 
Heiter bis wolkig
von Lars Röwekamp und Arne Limburg

JAX-RS 2.0 
Ein erster Blick auf die wichtigsten Neuerungen
von Thilo Frotscher

JMS 2.0: Runderneuert 
Die lang erwartete Modernisierung
von Thilo Frotscher

„JSF hat sich extrem gut in der Industrie etabliert.“ 
Interview mit Andy Bosch

Keine Wolke (Java EE) 7
Der Himmel kann warten
von Bernhard Löwenstein

Generalüberholung – Java EE 6 Style 
Migration zu Java EE 6 abseits der grünen Wiese
von Jens Schumann

Enterprise

Die Macht der Bilder 
Dynamische Datenabfrage und leichtgewichtige Visualisierung
von János Vona

AOP – wir übernehmen 
Modernizing Legacy, die sanfte Modernisierung einer relationalen DB durch aspektorientierte Programmierung
von Werner Gross

Geschäftsprozesse vom Fließband 
Continuous Integration für automatisierte Geschäftsprozesse mit Maven und Jenkins
von Dr. Daniel Lübke und Martin Heinrich

Web

OAuth, die Zweite 
OAuth 2.0: die Clientseite
von Sven Haiges

Cloud Computing

In Google we trust? 
Anwendungen für die Google App Engine entwickeln
von Michael Seemann

Tutorial

Mit Java ME ins Internet 
Kleine Plattform, großer Markt
von Tam Hanna

Agile

Die hohe Kunst des agilen Testens 
Yoga für Fortgeschrittene
von Sven Schirmer

Requirements Engineering 
Sind Benutzerbedürfnisse die wahren Anforderungen?
von Dirk Schüpferling und Monika Popp

Tools

What’s up, Doc? 
Dokumentenverarbeitung mit dem docx4j-Framework
von Lars Drießnack

Architektur

Software-Design-Dokumente 
Wissen fürs Projekt oder für die Schublade?
von Berthold Schulte

Android360

Grüne Männchen testgetrieben
Test-driven Development mit Android und Maven
von Eugen Seer

Zwei Seiten einer Medaille?
Reichen Java und Linux aus, um Android-Apps zu entwickeln?
von Jörg Pechau

Android 4.1: Alles in Butter
Schneller, flüssiger, responsiver
von Lars Röwekamp und Arne Limburg

Productivity, Productivity, Productivity

Die Fertigstellung der Java EE 7 steht kurz bevor, ein guter Zeitpunkt also, das neue „Java fürs Große“ unter die Lupe zu nehmen. Auch im Vorfeld dieses Release gab es enttäuschte Gesichter, als es hieß, die hippen Cloud-Technologien werden nicht in dieser Version, sondern erst mit der nachfolgenden Version 8 erscheinen.

Wer also das mächtige Cloud-Release, als das EE 7 ursprünglich mit Pauken und Trompeten angekündigt wurde, erwartete, für den fällt die de facto EE 7 gewiss etwas blass aus. Zumal es nicht sonderlich originell wirkt, zum dritten Mal in Folge ein Major-Release unter das Motto „Productivity“ zu stellen. Aber dieser Umstand spricht wohl eher Bände darüber, wie es um dieses Thema zuvor bei der J2EE bestellt war… So lassen wir uns also ein Productivity-Release nach dem anderen gerne gefallen.

Die Frage dagegen, ob wir tatsächlich eine „Cloud-ready Java EE“ benötigen, lässt sich am besten mit einer Gegenfrage beantworten: „Wie sollte eine Cloud-ready Java EE überhaupt aussehen?“ Ich vermute ja, es waren eher die konzeptionellen Unklarheiten als handfeste technische Probleme, die eine Verschiebung des Wolkenthemas auf die Version 8 zur Folge gehabt haben. In anderen Worten: das Risiko, mit einer Spec für Java EE Cloud Provisioning und Multi-Tenancy voran zu marschieren, ohne dass die maßgeblichen Hersteller nachfolgen, wäre wohl zum jetzigen Zeitpunkt zu hoch gewesen.

Da überlassen wir doch lieber die vielfältigen PaaS-Technologien wie CloudFoundry, Heroku, OpenShift oder Google App Engine dem freien Spiel der Marktkräfte und analysieren dann, welche Konzepte für die Anwender tatsächlich von Nutzen sind. Eine Spec schreiben können wir im Nachhinein dann immer noch.

Überhaupt ist das Zuhören, was auf dem Marktplatz so geredet wird, immer eine gute Idee. So hat Oracle auch eine Umfrage zum Thema Java EE 7 gestartet und kurz vor Jahresfrist die Ergebnisse veröffentlicht. Die Umfrage spiegelt die Erwartungen der Entwicklercommunity an die Java EE 7 wider:

– 73 Prozent meinen, CDI sollte per Default in Java-EE-Umgebungen aktiviert werden.
– 53 Prozent unterstützen die konsistente Nutzung von @Inject in allen JSRs, nur 28 Prozent halten alternative Injection-Annotationen für sinnvoll.
– Sollte das CDI @Stereotype dahingehend erweitert werden, dass Annotationen über CDI hinaus abgedeckt werden? 62 Prozent meinen: Ja! 13 Prozent sind dagegen.
– 96 Prozent sind dafür, Interceptors für alle Java-EE-Komponenten zu ermöglichen. 35 Prozent sehen das auch für Java-EE-Managed-Klassen.

Einen kompakten Einstieg in die Neuerungen der Java EE 7 bieten unsere Beiträge auf den Seiten 16–43.

Android – endlich geschmeidig

In der Kolumne „Good to know“ beschreiben Lars Röwekamp und Arne Limburg eine Android-Innovation, die möglicherweise von zentraler Bedeutung für den weiteren Markterfolg des Mobile-Betriebssystems sein kann (Seite 112). Es handelt sich um das „Project Butter“, das für einen ruckelfreien Fluss aller Animationen und – vielleicht am wichtigsten – für Touch-Reaktionen in gefühlter Echtzeit sorgen soll.

Damit haben die Android-Entwickler endlich eine zentrale Schwachstelle gefixt, die Android-Devices im Allgemeinen und die Tablets im Speziellen bis vor Kurzem noch deutlich unreifer haben erscheinen lassen als die Konkurrenz von Apple.

Man muss sich das mal vorstellen: Da haben die Android-Ingenieure keine Mühen gescheut, ihrem Betriebssystem so tolle Sachen wie Multitasking oder viele Schnittstellen zu spendieren, und damit erreicht, dass ihr Betriebssystem Dinge kann, die die Apple-Welt (teilweise) noch nicht beherrscht, aber die direkte und intuitive Interaktion mit dem Nutzer – das Wichtigste was ein Multi-Touch-System beherrschen sollte! -, haben sie ihrem Android erst jetzt gegönnt.

Besser spät als nie, jedenfalls stelle ich selbst (als notorischer iOS-Nutzer) fest, dass mir Android mit Jelly Beans erstmals richtig Spaß macht. Überhaupt könnte es sein, dass der August 2012 eines Tages als der Wendepunkt im Kampf „iOS vs. Android“ bezeichnet werden wird – mit Jelly Beans und den gut gemachten, aber kostengünstigen 7-Zoll-Devices von Google und Amazon haben die Apple-Konkurrenten erstmals eine ernsthafte Alternative zum dominierenden iPad vorzuweisen.

Ich wünsche Ihnen jedenfalls einen tollen Start ins neue Jahr und viel Glück und Erfolg bei allen beruflichen und privaten Vorhaben!

Sebastian Meyen, Chefredakteur Java Magazin
Twitter: @smeyen
Google+: gplus.to/JavaMagazin

Links und Downloadempfehlungen zu den Artikeln im HeftJAX-RS: Jersey-Projekt: http://jersey.java.netJAX-RS: GlassFish 4, Promoted Builds:http://download.java.net/glassfish/4.0/JMS Specification Project Home: http://jms-spec.java.netOAuth 2.0 Specification: http://tools.ietf.org/html/draft-ietf-oauth-v2-31Eran Hammers Blogpost zu OAuth 2.0:http://hueniverse.com/2012/07/oauth-2-0-and-the-road-to-hell/Funktionsweise von Project Butter:http://www.androidpolice.com/2012/07/12/getting-to-know-android-4-1-part-3-project-butter-how-it-works-and-what-it-added/Java-EE-7-Spezifikation: http://jcp.org/en/jsr/detail?id=342Java EE 7 Feedback Survey:https://www.surveymonkey.com/s/javaee7Interview mit Bernhard Löwenstein zum Thema PaaS: http://it-republik.de/jaxenter/artikel/5306Repository zum Artikel „Geschäftsprozesse vom Fließband“:https://github.com/dluebke/article-prozesse-vom-fliessbandEinführung in Test-driven Development:http://www.agiledata.org/essays/tdd.htmlStrategien für Agile Softwareentwicklung:http://www.agilemodeling.com/essays/agileDocumentation.htmSoftware Modeling on Plain Old Whiteboards:http://www.agilemodeling.com/essays/whiteboardModeling.htmBlutleere Domainmodelle:http://martinfowler.com/bliki/AnemicDomainModel.htmlGoogle App Engine: https://appengine.google.com/Projekt Appscale: http://code.google.com/p/appscale/Liste der von der GAE unterstützten JRE-Klassen:https://developers.google.com/appengine/docs/java/jrewhitelistContinuous Integration:http://www.martinfowler.com/articles/continuousIntegration.htmlRobolectric: http://pivotal.github.com/robolectric/maven-quick-start.htmlGoogle Charts: https://developers.google.com/chart/?hl=de-DETinylog: http://www.tinylog.org/deLog4j: http://logging.apache.org/log4j/1.2/Logback: http://logback.qos.ch/Java Logging Overview:http://docs.oracle.com/javase/7/docs/technotes/guides/logging/over