VM.PL

Warum ist ein Java-Update nach März 2022 notwendig?

/ 20.07.2022
Java

Wir arbeiten seit 2014 mit DACH-Unternehmen zusammen und können feststellen, dass viele von ihnen vor größeren Java-Updates zurückschrecken. Oft liegt es daran, dass die Unternehmer davon ausgehen, dass das Bessere der Feind des Guten ist. Wenn etwas funktioniert, dann gibt es keinen Grund, es zu ändern.

Und obwohl diese Logik zweifellos auf viele Geschäftsfälle zutrifft, lassen die jüngsten Veränderungen in der Java-Welt keinen Zweifel: Wenn Sie das System nicht aktualisieren, werden Sie sowohl in geschäftlicher als auch in technologischer Hinsicht zurückfallen.  Heute werde ich alle Änderungen, Vorteile und neuen Funktionen der neuesten Java-Versionen aufschlüsseln, die meiner Meinung nach einen großen Unterschied in der Arbeitsweise von Unternehmen und ihrer Software machen.

PS. In den meisten Fällen vergleichen die folgenden Änderungen Java 8 und 17, aber nicht alle. Einige Funktionen sind auch in früheren Java-Versionen verfügbar. Dennoch werde ich die Beispiele auf die populärsten, alten (J8) und die neuesten LTS-Versionen (J17) beschränken, um das Verständnis der Trends zu erleichtern. 

Ende des technischen Supports

Einige Java-Versionen werden in Form von LTS (Long-Term-Support) herausgegeben, der im Fall von Java 8 im März 2022 endet. Oracle bietet Java 8 nicht mehr mit Premier Support an. Offiziell heißt es, dass "der Aufwand für die Wartung wahrscheinlich deutlich geringer sein wird als jetzt."

Mit anderen Worten: Oracle investiert nicht mehr in Java 8 und wird es nicht mehr weiterentwickeln, da es neue Versionen entwickeln wird. Dies hat zur Folge, dass Unternehmen, die mit altem Java arbeiten, keinen Zugang zu technischem Support haben werden. Ihre Systeme werden langsamer wachsen als konkurrierende Systeme, die mit Java 17 und neueren Versionen arbeiten.

Sicherere und effizientere Geschäfte

Der fehlende Support durch Oracle bedeutet auch, dass es keinen Zugang zu Sicherheits-Patches gibt. Jede Version hat Sicherheitsprobleme; je älter die Version, desto mehr Löcher hat sie. Und Oracle wird diese nicht mehr patchen.

Unternehmen, die Java nicht aktualisieren, sind anfälliger für Datenverluste und andere Sicherheitslücken. Die Zahl der Sicherheits- und Performance-Probleme, die regelmäßig behoben werden, ist enorm. Werfen Sie einen Blick auf diese Liste, um einen Eindruck von der Größenordnung der Reparaturen zu bekommen.

Darüber hinaus erhalten Unternehmen mit Java 17 Zugang zu Funktionen, die die Systemleistung und damit die Arbeitsgeschwindigkeit aller Mitarbeiter verbessern. Eine grundlegende Leistungsänderung, die für ältere Java-Versionen nicht verfügbar war, ist der neue, verbesserte G1- und ZGC-Garbage Collector.  Der Garbage Collector ist ein integriertes Programm, das automatisch und kontinuierlich den Speicher Ihres Systems verwaltet. Dank ihm wird Ihr System (Anwendung, Programm, Website) ständig von unnötigen Daten bereinigt, so dass es nicht überfüllt wird und schnell und effizient arbeitet.

via https://kstefanj.github.io/2021/11/24/gc-progress-8-17.html

In der Praxis bedeutet dies, dass mit dem neueren GC die Ausfallzeit der Unternehmenssoftware, die durch den Betrieb verursacht wird, um Millisekunden verkürzt wird. Das mag nicht nach einem gewaltigen Ergebnis klingen, kann aber bei einer Java Software, die Daten in Echtzeit verarbeitet, entscheidend sein. Und je mehr Daten sie verarbeitet, desto wichtiger werden die Millisekunden.

Weniger Code, weniger Probleme

Der Garbage Collector ist eine der tiefgreifendsten Funktionen von Java 17, aber es gibt noch viele weitere. Ich werde drei weitere Beispiele nennen, die ich für das Unternehmen für sehr wichtig halte.

  • Records (verfügbar seit J16) – einfache Informationsträger, die zwischen verschiedenen App-Schichten funktionieren, dank derer Sie z.B. DTO viel schneller programmieren können.
  • Versiegelte Klassen – ein Mechanismus, mit dem der Entwickler Einschränkungen in der Typenhierarchie einführen kann, ohne die Vererbung vollständig zu blockieren.
  • Switch Expression – eine verbesserte Version der Switch-Kontrollanweisung, die es Ihnen ermöglicht, das "Switch-Ergebnis" sofort einer Variablen zuzuweisen.

In die Sprache der Nicht-Techniker übersetzt, erleichtern und beschleunigen all diese Funktionen die Arbeit der Entwickler. Dank ihnen wird die Software des Unternehmens weniger Codezeilen haben, und der Code selbst wird einfacher (und billiger) zu warten sein.

Neue Entwickler anlocken und bestehende binden

Unternehmer, die IT-Unternehmen leiten (oder solche, die in hohem Maße von einer Software abhängig sind), wissen wahrscheinlich, wie schwierig es ist, ein komplettes IT-Team aufzubauen. Das gilt auch für die DACH-Region, weshalb sich viele Unternehmen aus diesem Teil Europas dafür entscheiden, ihre IT in die Nachbarländer zu verlagern.

Dennoch wollen Sie als Unternehmen die besten Mitarbeiter anziehen, die in der Regel mit der besten (und das heißt oft der neuesten) Software arbeiten wollen. Die Beibehaltung des alten Systems entmutigt ehrgeizige neue Mitarbeiter, die nach Wachstum und Entwicklung streben. 

Ein IT-Team zu vervollständigen ist generell schwierig, aber mit veralteter Software und Technologien ist es noch schwieriger. Dieses Prinzip funktioniert auch andersherum. Wenn Sie bei der alten Software bleiben, erhöhen Sie die Wahrscheinlichkeit, dass Ihre Entwickler abwandern. Wir sehen diesen Trend bei den Unternehmen unserer deutschen Partner. Entwickler wechseln oft den Job, weil sie nicht mehr mit dem alten Java arbeiten wollen, das ihnen keine neuen Herausforderungen und keinen Raum für Verbesserungen bietet.

Noch mehr Sicherheit und Effizienz

Die Umstellung auf ein neues Java bedeutet nicht nur, dass das System selbst aktualisiert wird. Stattdessen ist das Unternehmen gezwungen, gleichzeitig auch die Bibliotheken zu aktualisieren, also die Dateien, die es den Entwicklern ermöglichen, denselben Code mehrfach zu verwenden. Bibliotheken erleichtern und verkürzen die Codierungsarbeit, aber Sie wollen sie regelmäßig aktualisieren, weil neue Versionen sicherer, bequemer und schneller sind. Alte, veraltete Bibliotheken sind mit Sicherheits- und Leistungsfehlern behaftet. Wenn Sie Java aktualisieren, aktualisieren Sie auch alle Bibliotheken.

Java-Update ist eine Evolution, keine Revolution

Schließlich möchte ich noch hinzufügen, dass die Aktualisierung von Java keinen Übergang zu einem neuen, anderen System bedeutet. Unternehmen, die Java aktualisieren, müssen ihren Mitarbeitern keine neuen Dinge beibringen, sie nicht schulen oder spezielle Java17-Spezialisten einstellen. Das neue Java ist Ihr altes System, nur schneller, sicherer und effizienter. 

Solange die alte Software funktioniert und gut läuft, ist es sinnvoll, sie zu verwenden. Sie sollten jedoch auf die neueste Version umsteigen, wenn der offizielle Support endet und das System nicht mehr weiterentwickelt wird.

Für Java gilt März 2022 als Stichtag, also der Monat, in dem der PremierSupport endet. Wenn Sie dies nach diesem Zeitraum lesen und Ihr Team noch mit Java 8 oder früher arbeitet, beantworten wir gerne alle Ihre Fragen zum Upgrade.

 

Design, Entwicklung, DevOps oder Cloud - welches Team brauchen Sie, um die Arbeit an Ihren Projekten zu beschleunigen?

Chatten Sie mit unseren Beratungspartnern, um herauszufinden, ob wir gut zusammenpassen.

Jakub Orczyk
Vorstandsmitglied /Verkaufsdirektor
Buchen Sie eine kostenlose Beratung
Jakub Orczyk

Vereinbaren Sie noch heute einen Termin mit uns!

Wir würden Sie gerne in Ihrem Büro besuchen. Dies wird es uns ermöglichen, Kooperationsmöglichkeiten persönlich zu besprechen.

Hinterlassen Sie uns einfach eine Nachricht, und wir werden uns mit Ihnen in Verbindung setzen, um einen passenden Termin zu vereinbaren.

* Bitte füllen Sie alle Pflichtfelder aus.
Vereinbaren Sie noch heute einen Termin mit uns!