Java Magazin - 04.2013 - Node.js & vert.x


Preis: 9,80 €

Erhältlich ab:  März 2013

Umfang:  100

Autoren / Autorinnen: Michael Schnell, Dr. Jendrik Johannes, Eberhard Wolff, Christian Gross, Jeanfrançois Arcand, Andreas Bauer, Dino Tsoumakis, Tobias Zeck, Walid El Sayed Aly, Christian Meder, Dominik Helleberg, Arne Limburg, Lars Röwekamp, Sebastian Meyen, Michael Müller, Arne Limburg, Lars Röwekamp, Bernhard Löwenstein, Dirk Schüpferling, Chris Rupp, Lukas Holzamer, Mario Tonelli, Christine König, Florian Potschka, Nils Preusker, Kai Spichale, Remo Schildmann, Yann Simon, Martin Dilger, Sven Haiges

Da ist man nun seit so vielen Jahren Java-Entwickler, d. h. Spezialist für die beste Programmiersprache der Welt, und plötzlich mehren sich die Rufe nach polyglotter Programmierung. Haben wir nicht über die Jahre bewiesen, dass wir mit Java praktisch alles machen können, was die IT-Fantasie erdenken kann?

Dank zahlreicher Webframeworks haben wir eine ungeheure Auswahl an Architekturen, wenn es um Java-basierende Webanwendungen geht. Für die komplizierteren Fälle können wir zwischen Java EE und Spring wählen, und dank Android können wir auch Smartphone-Apps mit unserer geliebten Alleskönnersprache schreiben.

Und überhaupt – hatte es nicht immer geheißen: „Scripting is for kids“ und „Real men compile“?

Ola Bini, vermutlich einer der wichtigsten Vordenker moderner Programmiersprachen derzeit, hat einmal ein interessantes Modell entworfen. Jedes Softwaresystem solle sich demnach in drei Ebenen gliedern lassen. Die unterste Ebene bilde dabei der „Stable Layer“, typischerweise programmiert in Java (der Sprache) oder in einer anderen kompilierten Sprache wie etwa Scala. Hier werden die Fundamente einer Anwendung programmiert, die wichtigsten APIs, sozusagen der Kernel des Systems.

Darüber befindet sich der „Dynamic Layer“, typi­scherweise in einer (oder mehreren) dynamischen Sprache(n) geschrieben, wie etwa Groovy, JRuby, Clojure oder JavaScript. Hier wird, gemäß dem Modell, der überwiegende Teil der Geschäftslogik eines Systems entwickelt. Der Vorteil dynamischer Sprachen auf dieser Ebene: Dadurch, dass der Code nicht kompiliert wird, lassen sich Modifikationen „on the fly“ realisieren, was in einer Welt dramatisch beschleunigter Geschäftsprozesse und immer schnellerer Anpassungszyklen von großem Vorteil sein kann. Darüber hinaus erlauben Skriptsprachen typischerweise einen erheblich kompakteren Programmcode, was uns eine höhere Produktivität sowie eine geringere Fehleranfälligkeit verspricht.

On top finden wir den so genannten „Domain Layer“, und hier geht es ans geschäftliche Eingemachte: Hier werden Preise berechnet oder Daten ausgewertet, Zinssätze entwickelt oder Geschäftsregeln definiert und vieles andere mehr. Auf diesem Layer sollten wir den Fachabteilungen, denen unsere Systeme ja letztendlich dienen, größtmögliche Gestaltungsmöglichkeiten geben. Domänenspezifische Sprachen sind daher, laut Ola Bini, das Mittel der Wahl für diesen Bereich.

Gewiss, wir sollten diese Gedanken keineswegs als Dogma betrachten, so wie wir eigentlich nichts in der Welt der Softwarearchitektur dogmatisch verstehen sollten. Aber interessant sind Olas (gar nicht mal so neue) Ideen für eine Strukturierung polyglotter Systeme auf jeden Fall: Unterschiedliche Sphären erfordern unterschiedliche Antworten auf Probleme, und diese lassen sich am besten in zielgerichteten Sprachen formulieren. Aus diesem Grunde haben wir uns in der vorliegenden Ausgabe einigen Scripting-Technologien für die Java-Plattform zugewandt.

vert.x ist ein polyglottes Framework für die Java-Plattform und wird von Eberhard Wolff (Seite 18) vorgestellt. Node.js wurde von einer aktiven Community lange Zeit stark gehypt und stellt ein interessantes Konzept für JavaScript auf dem Server dar; ob es ein neues Tor zur Webarchitektur der Zukunft öffnet, prüft Christian Gross in seinem Artikel auf Seite 24. Und mit Atmosphere betrachten wir ein Framework, das mit verschiedenen Java-Technologien kompatibel für eine reibungslose Unterstützung von Protokollen wie WebSockets sorgt (Seite 33).

Halten wir‘s mit dem Fazit von Eberhard Wolff: Die Beschäftigung mit Scripting-Frameworks weitet auf jeden Fall den Horizont – zumal vert.x und Atmosphere dezidiert für die Java-Plattform gemacht sind. Und denken Sie bitte daran: Als Java-Enterprise-Entwickler haben Sie zu den Helden der 2000er-Jahre gezählt; aber die Welt verändert sich rapide, und die Softwareentwicklung wird ohne Zweifel mehrsprachiger. Die Plattform hat mittlerweile bewiesen, dass sie zu nachhaltiger Innovation fähig ist. Jetzt ist es an der Java-Community zu beweisen, dass sie trotz (oder gar wegen) ihrer Erfolge bis heute zu einem Umdenken bereit ist.

In diesem Sinne: Viel Spaß beim Lesen!

meyen_sebastian_sw.tif_fmt1.pngSebastian Meyen, Chefredakteur

Website Twitter Google Xing

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang