JAX 2015 – Tag 1

Christian Göbel Datum: 24. April 2015
Autor: Christian Göbel


Dieses Jahr ging’s für mich zum ersten Mal nach Mainz zur JAX – der größten Java-Konferenz in Deutschland. Nach zwei Teilnahmen bei der WJAX in München, der kleinen Schwester der JAX, war ich natürlich gespannt, was in Mainz auf mich zukommen würde.

Kontext und Schlüssel-Themen im Überblick

Sebastian Meyen, Chefredakteur des Java-Magazins, eröffnete die Konferenz und ging auf die Schlüssel-Themen ein. Zum einen stand die JAX ganz im Zeichen des 20. Geburtstags von Java, der Begriff „Generation Java“ war zu hören. Neben den Java Core Themen sollten sich die Sessions im Kontext der Themen Agile Entwicklung, Microservices, DevOps, Continious Delivery, Cloud & Container (insbesondere Docker) bewegen.

Keynote „The prepared Mind“

Frei nach Louis Pasteur („Chance favors the prepared mind“) gab Adrian Colyer, der Vater von aspectJ, Einblicke in sein Denken. In welche Richtung bewegt sich die Java-Welt aus seiner Sicht? Der große Trend: finer-grained structures (lifecycles, services, deployment units, runtimes, organizations).

Dann gab er einen Abriss zu, aus seiner Sicht wegweisenden, Papers. Es fielen Aussagen wie „Immutability changes everything”. Außerdem ging er auf die verheißungsvollen Möglichkeiten der Spracherkennung, dort konkret auf das Sirius-Projekt, ein.

Frege: ein Haskell für die JVM

Danach ging’s gleich mit einem eher exotischen Thema weiter: Frege, einem Haskell für die JVM, benannt nach Gottlob Frege, dem deutschen Philosophen, Mathematiker und Logiker. Da das Thema funktionale Programmierung im Zeitalter der Multicore-CPUs immer wichtiger für Software-Entwickler wird um Anwendungen zu entwickeln, die die volle Leistungsfähigkeit der heutigen Hardware bspw. durch Parallelisierung idiomatisch ausnutzen (Stichwort: seiteneffektfreie Funktionen), lohnt ein Blick über den Tellerrand, zu einer pur funktionalen Sprache wie Haskell. Und spätestens nachdem mit Java 8 nun seit letztem Jahr auch die Möglichkeit besteht, mit Java-Bordmitteln Kern-Elemente der Funktionalen Programmierung zu nutzen, ist das Thema ohnehin endlich voll im Mainstream angekommen.

Man nimmt durch so einen Blick über den Tellerrand meiner Erfahrung nach wieder neue Anregung für die alltägliche Arbeit mit Java mit. Es gelingt dadurch vielleicht, den eigenen Code ein Stück weit durchdachter zu gestalten, weil man bewusster mit den Stärken und Schwächen der eigenen Sprache umgeht. Gleichwohl sollte man auf keinen Fall versuchen, Idiome aus pure Funktionalen Sprachen wie Haskell 1:1 zu übernehmen.

JSF meets JavaScript

Nach diesen Funktionalen Ausflügen in die Welt des Lambda-Kalküls, holte einen eine JSF-Session wieder auf den Boden der Tatsachen zurück. Hier wurden Ansätze aus der Praxis eines erfahrenen JSF-Entwicklers vorgestellt. Spannend war zu hören wie andere Firmen bekannte JSF-Problemstellungen adressieren und z.B. mit Features aus Version 2.2 wie HTML-Friendly Markup und Pass-Through Elements elegante Möglichkeiten finden, um neue HTML5-Tags zu nutzen, ohne die Vorteile von JSF wie Value-Bindings aufgeben zu müssen.

Auch für uns wohl bekannte Problemstellungen wie dem Umgang von jQuery-Selektionen von JSF-Ids, die einen Doppelpunkt enthalten, gab’s interessante Lösungsansätze zu sehen. Abgerundet wurde der Überblick mit einer Vorstellung der Möglichkeiten der JSON-Integration in JSF.

Danach ging’s mit der Diskussion eines Themas weiter, dass die JSF-Welt offenbar polarisiert: PrimeFaces. Die einhellige Meinung ist, dass PrimeFaces eine ausgereifte Komponente-Suite darstellt, mit der sich in einer frühen bis mittleren Projektphase fast nur gute Erfahrungen machen lassen – ein Quick Win. Schwierigkeiten treten wohl erst in weiter fortgeschritten Phasen eines Projekts auf, wenn zum Beispiel der ein oder andere Bug in einer eingesetzten Komponente zu Tage tritt. Der Speaker setzt daher in seiner Firma auf eigens entwickelte JSF-Komponenten. Um mit PrimeFaces vergleichbare Ergebnisse zu erzielen, ist fundiertes JavaScript Know-How nötig. Das Investment lohnt sich jedoch. Man verliert auch JavaScript-Abhängigkeiten von PrimeFaces (wie bspw. zur eingesetzte jQuery-Version) und gewinnt volle Kontrolle über die genutzten Komponenten.

Möglich wird die Entwicklung von eigenen leistungsfähigen und AJAXifizierter JSF-Komponenten nach Meinung des Experten nur mittels „Enterprise JavaScript“. Man mag einem solchen Begriff gegenüberstehen wie man will, gemeint ist letztendlich der Einsatz von Konzepten und Tools, die auf der Serverseite bereits seit langem zum guten Ton gehören: möglichst wenig oder gar keine globalen Zustände; Namespaces und Modularisierung (z.B. mittels Grunt); Dependency-Management; Unit-Tests; statische Code-Analyse und Minifying.

Fazit des Speakers: „ohne JavaScript Build-System keine ‘enterprise’-fähige JavaScript-Entwicklung“.

Kommentare

Benjamin Hofmann

Benjamin Hofmann

– 24. April 2015 / 07:33

DevOps ist immer noch ein Keyword?

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


Open Graph Meta Tags & facebook for developers

Autor: Steven Schöning


Technologie


Ich hatte vor kurzem das Problem, dass trotz dem hinterlegten Bild im og:image Tag ein anderes Bild ausgespielt wurde, denn es wurde das erste Bild im HTML Quelltext beim teilen über Facebook ausgegeben. Hier konnte ich bei “facebook for developers” einige Informationen zu dem Thema finden, indem ich im Sharing Debugger und im Object Debugger …


Beitrag lesen
15.
Juni
2017

iOS Probleme mit transition

Autor: Florian Müller


Technologie // User Experience & Design


Heute ist mir bei einem Projekt ein Problem mit iOS begegnet. Es gibt eine Galerie, bei welcher die Elemente von oben “hereinfliegen”. Auf dem iPad und dem iPhone war dieser Effekt kaum beziehungsweise gar nicht vorhanden, sondern das Bild war einfach *plopp* da. Problem hierbei ist, dass transitions bei iOS ohne Hardware Beschleunigung gerendert werden. …


Beitrag lesen
28.
Sep.
2016

WJAX 2017: Web-APIs, einfach oder?

Autor: Regina Staller


Technologie


Wie im letzten Blog von mir erwähnt wurde, habe ich auf der diesjährigen WJAX einen Vortrag über den effektiven sowie effizienten client- und serverseitigen Umgang mit Web-APIs besucht. Gehalten wurde dieser Vortrag von Thilo Frotscher. Die wesentlichen Themen aus dieser Session möchte ich hier gerne noch einmal vorstellen. Besonders im Bereich IBE/Metasuche bin ich schon …


Beitrag lesen
20.
Nov.
2017

<enki/>

Autor: Benjamin Hofmann


Technologie // Über den Tellerrand


Ich bin neulich über Enki, eine kleine interessante App für iPhone und Android gestolpert, die einem Entwickler zu bestimmten Themen täglich kleine Aufgaben gibt, die es zu lösen gilt. Das Ganze dient dazu in wenigen Minuten täglich etwas zusätzliches Wissen aufzubauen oder dieses zu vertiefen. Die App stellt sich wie ein typischer Fitness-Tracker da und …


Beitrag lesen
07.
Sep.
2016