Schweitzer Fachinformationen
Wenn es um professionelles Wissen geht, ist Schweitzer Fachinformationen wegweisend. Kunden aus Recht und Beratung sowie Unternehmen, öffentliche Verwaltungen und Bibliotheken erhalten komplette Lösungen zum Beschaffen, Verwalten und Nutzen von digitalen und gedruckten Medien.
Zunächst einmal bedanke ich mich bei Ihnen, dass Sie sich für dieses Buch entschieden haben. Hierin finden Sie eine Vielzahl an Informationen zu den Neuerungen in der aktuellen Java-Version 14 und in den Vorgängern 9 bis 13. Aufgrund des mittlerweile halbjährlichen Releasezyklus sind in den Java-Versionen 10, 11, 12 und 13 jeweils weniger Änderungen als in früheren Releases enthalten. In diesem Buch werden insbesondere auch diverse Neuerungen aus Java 9 beschrieben, weil Java 9 das letzte große Update nach Java 8 war und eine Vielzahl an relevanten Erweiterungen mitbringt.
Zielgruppe
Dieses Buch ist kein Buch für Programmierneulinge, sondern richtet sich an diejenigen Leser, die bereits solides Java-Know-how besitzen und sich kurz und prägnant über die wichtigsten Neuerungen in den Java-Versionen 9 bis 14 informieren wollen. Dieses Buch wendet sich im Speziellen an zwei Zielgruppen:
Sie als Leser erhalten in diesem Buch neben Theoriewissen eine Vertiefung durch praktische Beispiele, sodass der Umstieg auf Java 9 bis 14 in eigenen Projekten erfolgreich gemeistert werden kann. Erleichtert wird ein Umstieg durch eine Vielzahl an Übungen, die dem Leser die jeweiligen Features dediziert nahebringen.
Um die Beispiele des Buchs möglichst präzise und elegant zu halten, verwende ich diverse Features aus Java 8. Deshalb ist es hilfreich, wenn Sie sich damit schon beschäftigt haben. Alle, die eine kleine Auffrischung benötigen, finden zum leichteren Einstieg in Anhang A einen Crashkurs zu Java 8.
Dieses Buch besteht in Wesentlichen aus zwei größeren Teilbereichen, nämlich einem zu den Neuerungen in Java 9 bis 11 und einem zu den Neuerungen in Java 12 bis 14. Diese Untergliederung habe ich gewählt, weil Java 9 und 10 nicht mehr ohne spezielle Tricks als Download erhältlich sind und Java 11 ein über Jahre unterstütztes Release, ein sogenanntes LTS-Release, darstellt, wobei LTS für Long Term Support steht. Die aktuellsten Entwicklungen sind dann für Java 12 bis 14 beschrieben. Nachfolgend möchte ich die Themen der einzelnen Kapitel kurz vorstellen.
Kapitel 1 - EinleitungDie Einleitung stimmt Sie auf Java 9 bis 14 ein und gibt einen Überblick, was Sie so alles in diesem Buch bzw. als Neuerungen erwartet.
Kapitel 2 - Syntaxerweiterungen in JDK 9 bis 11Zunächst widmen wir uns verschiedenen Änderungen an der Syntax von Java. Neben Details zu Bezeichnern, dem Diamond Operator und Ergänzungen bei Annotations gehe ich vor allem kritisch auf das Feature privater Methoden in Interfaces ein. Für Java 10 und 11 stelle ich var als Möglichkeit zur Definition lokaler Variablen bzw. zur Verwendung in Lambdas vor.
Kapitel 3 - Neues und Änderungen in JDK 9In den APIs des JDKs finden sich diverse Neuerungen. Dieses Potpourri habe ich thematisch ein wenig gegliedert. Neben Vereinfachungen beim Prozess-Handling, der Verarbeitung mit Optional<T> oder von Daten mit InputStreams schauen wir auf fundamentale Neuerungen im Bereich der Concurrency durch Reactive Streams.
Kapitel 4 - Neues und Änderungen in Java 10Seit Java 10 verfolgt man bei Oracle die Strategie, Java in kleinen, aber feinen Iterationen um nützliche Funktionalität zu ergänzen und auch in Bezug auf die Syntax zu modernisieren. In diesem Kapitel werden einige API-Erweiterungen vorgestellt.
Kapitel 5 - Neues und Änderungen in Java 11Neben einigen API-Erweiterungen wurden vor allem kleinere Bereinigungen im JDK vorgenommen, unter anderem sind die Module zu CORBA, JavaFX und in Teilen auch zu XML, speziell JAXB, nun nicht mehr Bestandteil des JDKs.
Kapitel 6 - JVM-Änderungen in JDK 9 bis 11In diesem Kapitel beschäftigen wir uns mit Änderungen in der JVM, etwa bei der Garbage Collection oder der Einführung der jshell. Auch in Bezug auf javadoc und der Nummerierung von Java-Versionen finden wir in Java 9 Änderungen, die thematisiert werden. Java 11 bringt einen neuen Garbage Collector sowie mit dem Feature »Launch Single-File Source-Code Programs« die Möglichkeit, Java-Klassen ohne explizite vorherige Kompilierung ausführen zu können.
Kapitel 7 - Übungen zu den Neuerungen in JDK 9 bis 11Zur Vertiefung des Gelernten präsentiert dieses Kapitel diverse Übungsaufgaben zu den Themen der vorangegangenen Kapitel 2 bis 6.
Kapitel 8 - Neues und Änderungen in Java 12Für uns als Entwickler relevante Neuerungen finden sich in Java 12 kaum. Erwähnenswert ist vor allem ein Preview auf Syntaxänderungen bezüglich switch. Darüber hinaus könnte Sie das Microbenchmark-Framework JMH (Java Microbenchmarking Harness) interessieren, sofern Sie Optimierungen auf Mikroebene vornehmen mussten, um das letzte Quäntchen an Performance herauszuholen. Ergänzend bietet Java 12 dann noch kleinere API-Neuerungen.
Kapitel 9 - Neues und Änderungen in Java 13 und 14Java 13 umfasst vor allem zwei Previews auf Syntaxänderungen: Zum einen ein Folge-Preview zu switch und zum anderen ein Preview auf mehrzeilige Strings, »Text Blocks« genannt. Da diese auch in Java 14 enthalten sind, existiert kein gesondertes Kapitel zu Java 13, sondern alles wird in diesem Kapitel beschrieben. Mit Java 14 werden die Neuerungen bei switch endlich in den Sprachstandard aufgenommen. Zudem gibt es eine hilfreiche Ergänzung zur Fehleranalyse bei NullPointerExceptions. Darüber hinaus finden wir unter anderem folgende Preview-Features: Sogenannte Records, die eine extrem kompakte Schreibweise zum Deklarieren spezieller Klassen mit unveränderlichen Daten bieten und die automatisch das passende API bereitstellen. Im Kontext von instanceof erlaubt es eine Syntaxerweiterung, unschöne Casts und künstliche Hilfsvariablen zu vermeiden. Zudem bietet Java 14 zwei Erweiterungen bei der Definition mehrzeiliger Texte.
Kapitel 10 - Übungen zu den Neuerungen in JDK 12 bis 14Auch für die Neuerungen aus Java 12 bis 14 wird ein umfangreicher Satz an Übungsaufgaben zu den Themen der vorangegangenen Kapitel 8 und 9 präsentiert. Deren Bearbeitung sollte Ihr Wissen dazu vertiefen.
Kapitel 11 - Modularisierung mit Project JigsawKlar strukturierte Softwarearchitekturen mit sauber definierten Abhängigkeiten sind erstrebenswert, um selbst größere Softwaresysteme möglichst beherrschbar zu machen und Teile unabhängig voneinander änderbar zu halten. Seit Java 9 helfen dabei Module als eigenständige Softwarekomponenten. In diesem Kapitel wird die Thematik Modularisierung eingeführt und anhand von Beispielen vorgestellt. Im Speziellen werden Themen wie Sichtbarkeit und Zugriffsschutz behandelt.
Kapitel 12 - Weiterführende Themen zur ModularisierungIn diesem Kapitel gehe ich auf einige fortgeschrittenere Themen zur Modularisierung ein. Zunächst stelle ich Ihnen eine Alternative zum von Oracle propagierten, aber in der Praxis hinderlichen Verzeichnislayout für Module vor. Danach betrachten wir die Abhängigkeitssteuerung in größerer Tiefe: Zwar hilft die Modularisierung bei der Strukturierung eines Systems, jedoch besitzen die Module oftmals direkte Abhängigkeiten bereits zur Kompilierzeit. Wird eine losere Kopplung benötigt, so kann man dafür Services nutzen. Zudem ändern sich durch die Modularisierung ein paar Dinge bezüglich Reflection, beispielsweise lassen sich neue Eigenschaften ermitteln, etwa die Moduldaten zu einer Klasse. Verbleibt noch ein wichtiges Thema, nämlich die Migration einer bestehenden Applikation in eine modularisierte. Weil dabei doch ein paar Dinge zu beachten sind, ist diesem Thema ein ausführlicher Abschnitt gewidmet, der insbesondere die verschiedenen Arten von Modulen und ihre Eigenschaften...
Dateiformat: ePUBKopierschutz: Wasserzeichen-DRM (Digital Rights Management)
Systemvoraussetzungen:
Das Dateiformat ePUB ist sehr gut für Romane und Sachbücher geeignet - also für „fließenden” Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Mit Wasserzeichen-DRM wird hier ein „weicher” Kopierschutz verwendet. Daher ist technisch zwar alles möglich – sogar eine unzulässige Weitergabe. Aber an sichtbaren und unsichtbaren Stellen wird der Käufer des E-Books als Wasserzeichen hinterlegt, sodass im Falle eines Missbrauchs die Spur zurückverfolgt werden kann.
Weitere Informationen finden Sie in unserer E-Book Hilfe.