Java - die Neuerungen in Version 9 bis 14 (eBook)

Modularisierung, Syntax- und API-Erweiterungen
eBook Download: EPUB
2020 | 1. Auflage
370 Seiten
dpunkt (Verlag)
978-3-96088-979-3 (ISBN)

Lese- und Medienproben

Java - die Neuerungen in Version 9 bis 14 -  Michael Inden
Systemvoraussetzungen
29,90 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen

Bleiben Sie bei Java auf dem Laufenden!

  • Aktuelle Infos bis zur neuesten Java-Version
  • Vertiefen Sie Ihr Know-how durch praktische Übungen
  • Lernen Sie die wichtigen Änderungen kompakt kennen

Sie besitzen bereits solides Java-Know-how und möchten sich prägnant über die wichtigsten Neuerungen in den Java-Versionen 9 bis 14 informieren und Ihr Wissen auf den neuesten Stand bringen? Dann ist dieses Buch genau das Richtige für Sie. Vertiefen können Sie Ihr Wissen in diesem Buch zusätzlich durch eine Vielzahl an Übungen.




Dipl.-Inform. Michael Inden ist Oracle-zertifizierter Java-Entwickler. Nach seinem Studium in Oldenburg hat er bei diversen internationalen Firmen in verschiedenen Rollen etwa als Softwareentwickler, -architekt, Consultant, Teamleiter sowie Trainer gearbeitet. Zurzeit ist er als CTO und Leiter Academy in Zürich tätig. Michael Inden hat über zwanzig Jahre Berufserfahrung beim Entwurf komplexer Softwaresysteme gesammelt, an diversen Fortbildungen und mehreren Java-One-Konferenzen teilgenommen. Sein besonderes Interesse gilt dem Design qualitativ hochwertiger Applikationen mit ergonomischen GUIs sowie dem Coaching. Sein Wissen gibt er gerne als Trainer in internen und externen Schulungen und auf Konferenzen weiter, etwa bei der Java User Group Switzerland, bei der JAX/W-JAX, ch.open und den IT-Tagen.

Dipl.-Inform. Michael Inden ist Oracle-zertifizierter Java-Entwickler. Nach seinem Studium in Oldenburg hat er bei diversen internationalen Firmen in verschiedenen Rollen etwa als Softwareentwickler, -architekt, Consultant, Teamleiter sowie Trainer gearbeitet. Zurzeit ist er als CTO und Leiter Academy in Zürich tätig. Michael Inden hat über zwanzig Jahre Berufserfahrung beim Entwurf komplexer Softwaresysteme gesammelt, an diversen Fortbildungen und mehreren Java-One-Konferenzen teilgenommen. Sein besonderes Interesse gilt dem Design qualitativ hochwertiger Applikationen mit ergonomischen GUIs sowie dem Coaching. Sein Wissen gibt er gerne als Trainer in internen und externen Schulungen und auf Konferenzen weiter, etwa bei der Java User Group Switzerland, bei der JAX/W-JAX, ch.open und den IT-Tagen.

Vorwort


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:

  1. Zum einen sind dies engagierte Hobbyprogrammierer und Informatikstudenten, aber auch Berufseinsteiger, die Java als Sprache beherrschen und an den Neuerungen in Java 9 bis 14 interessiert sind.
  2. Zum anderen ist das Buch für erfahrene Softwareentwickler und -architekten gedacht, die ihr Wissen ergänzen oder auffrischen wollen, um für zukünftige Projekte abschätzen zu können, ob und – wenn ja – für welche Anforderungen die neuen Java-Versionen eine gewinnbringende Alternative darstellen können.

Was vermittelt dieses Buch?

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.

Aufbau dieses Buchs


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

Erscheint lt. Verlag 5.5.2020
Reihe/Serie Programmieren mit dpunkt
Programmieren mit Java
Programmieren mit Java
Verlagsort Heidelberg
Sprache deutsch
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Schlagworte Bad Smells • codereviews • Coding-Conventions • collections • Entwurfsmuster • Java 10 • Java 11 • Java 12 • java 13 • Java 14 • java 9 • Java SE • JDK 9 • Jigsaw • lambdas • Modularisierung • Multithreading • Objektorientiertes Design • Programmierstil • Refactorings • Unit Tests
ISBN-10 3-96088-979-8 / 3960889798
ISBN-13 978-3-96088-979-3 / 9783960889793
Haben Sie eine Frage zum Produkt?
EPUBEPUB (Wasserzeichen)
Größe: 3,2 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belle­tristik und Sach­büchern. Der Fließ­text wird dynamisch an die Display- und Schrift­größe ange­passt. Auch für mobile Lese­geräte ist EPUB daher gut geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Einführung, Ausbildung, Praxis

von Christian Ullenboom

eBook Download (2023)
Rheinwerk Computing (Verlag)
37,43
Moderne GUIs für RIAs und Java-Applikationen

von Ralph Steyer

eBook Download (2022)
Springer Fachmedien Wiesbaden (Verlag)
42,99