JAX 2015 – Tag 1


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“.

Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


100 Arbeitstage Leitung Produktmanagement: Eine Zwischenbilanz.

Autor*in: Christine Pfleger


infomax   //   Technologie


Ina Fuchshuber
Ina Fuchshuber, Leiterin Produktmanagement imx.Platform bei infomax

Seit diesem Jahr gibt es bei infomax die neue Position der Leitung Produktmanagement für die imx.Platform. Welche Motivation hinter der Schaffung dieser Stelle steckt, welche Aufgabengebiete damit verbunden sind und was sich seither getan hat, berichtet Ina Fuchshuber, die die Stelle der Leitung Produktmanagement seit Juli innehat und kürzlich ihren 100. Arbeitstag bei infomax hatte.


Beitrag lesen
24
NOV
22

Twitter Account-ID auslesen

Autor*in: Stefan Oswald


Technologie


Twitter bemüht sich nach Kräften, die numerische ID seiner Benutzer-Accounts zu verstecken. Nur dumm, dass genau diese ID für die Twitter-Integration im imxSocialMediaReader benötigt wird… Früher war das kein Problem, da Twitter da noch auf der Tweet-Seite des Accounts öffentlich einen RSS-Link publizierte; das ist derzeit aber leider nicht mehr der Fall. Wie kommt man …


Beitrag lesen
20
OKT
11

Netbeans 7.1patch1 released

Autor*in: Bastian Schwarz


Technologie


Gestern wurde Netbeans 7.4patch1 released in dem auch einige PHP Fixes mit drin sind. Näheres gibt es hier: https://netbeans.org/community/news/show/1602.html Das Auto-Namespacing geht leider immer noch nicht … Gruß Bastian


Beitrag lesen
26
NOV
13

JavaScript, HTML5 & Angular Days 2016

Autor*in:


Technologie // Über den Tellerrand // User Experience & Design


Einige von uns Portalentwicklern waren im Oktober in Berlin auf den JavaScript, HTML5 & Angular Days 2016. Hier nachträglich noch kurz meine und Bennis Highlights: „Dem Benedikt seine Highlights“ CSS3 Flexbox Der Style „display: flex;“ ist ein unglaublich flexibles und simples Werkzeug, um Responsivität in die kleinsten Module zu bringen. Wo wir heute noch mit Style-Hacks arbeiten, …


Beitrag lesen
28
NOV
16