Mit Java 15 erscheint nun bereits das sechste halbjährliche Java-Release in Folge. Und das mal wieder genau im Zeitplan – eine Eigenschaft, die man von IT-Projekten im Allgemeinen und früheren Java-Versionen im Speziellen so nicht gewohnt ist. Laut der Ankündigung auf der Mailingliste gibt es neben Hunderten kleineren Verbesserungen und Tausenden Bugfixes insgesamt vierzehn neue Features. In diesem Artikel werfen wir einen Blick auf die relevanten Änderungen.
Das Vorgehen hat sich bewährt – auch im JDK 15 hat mit Sealed Classes ein neues Sprachkonstrukt vorerst als Preview-Feature Einzug gehalten. Es gibt Entwicklern Kontrolle darüber, welche Klassen von einem bestimmten Interface oder einer Klasse erben dürfen. Wem das neue Sprachkonstrukt nützt, wann man es einsetzen kann und was man jetzt und in Zukunft alles damit anstellen können wird, wird in diesem Artikel zusammengefasst.
Eine Anwendung soll sich während der Entwicklung mit der lokalen Datenbank, in der Produktion jedoch mit einer anderen Datenbank verbinden. Bei klassischen Java-EE-Anwendungen wird auf die Mittel eines Application Servers zurückgegriffen, um diese Verbindungen zu konfigurieren. Spring Boot bietet hierfür das „Externalized Configuration“-Konzept.
Spring Boot hat mich schon immer fasziniert. Kein Herumärgern mehr mit verschiedenen Versionen von Application Servern und unterschiedlichen Umgebungen zwischen lokaler Entwicklung, Test und Produktion. Beschäftigt man sich mit Spring Boot, stößt man schnell auf den Begriff Auto Configuration – ein Begriff, der von den meisten mit „Spring Boot macht das schon irgendwie richtig“ interpretiert wird. Aber was genau ist denn richtig?
Den Aspekt der Barrierefreiheit in der Darstellung von Web-Inhalten sollte man stets im Hinterkopf behalten, um das Internet für möglichst viele Menchen zu öffnen. Wir haben uns mit unserem Experten und JAX-Sprecher Karsten Sitterberg unterhalten, was Barrierefreiheit eigentlicht ausmacht und warum alle Nutzer davon profitieren.
Datenklassen, also Java-Klassen, deren einziger Zweck darin besteht, Daten zu halten und diese über Getter und Setter zugänglich zu machen, gehören in vielen Softwareprojekten zu den größten Sammelstellen von Boilerplate-Code. Für jede neue Klasse jeweils Konstruktoren, die Methoden equals, hashCode und toString und für jedes Feld noch einen Getter und einen Setter zu erstellen, ist für viele Entwickler eine verhasste Zeremonie geworden – sofern sie nicht direkt Bibliotheken wie Lombok einsetzen, um dieser zu entgehen. JEP 359 soll Abhilfe schaffen.
Wer hat sie nicht schon gehört: Buzzwords wie Domain-driven Design und DevOps beherrschen jeden Smalltalk zum Thema Unternehmens-IT und Software-Architektur. Doch wie geht man über vom bloßen Parolendreschen zum wertschöpfenden Einsatz in produktiven Umgebungen? Bernd Rederlechner, leitender Architekt bei der T-Systems Digital Solutions und Speaker auf der JAX 2020, gibt Einblicke aus der Praxis.
Mit WebAssembly lassen sich Hochsprachen wie Java oder C# in ein neues Binärformat kompilieren, das direkt im Browser ausgeführt werden kann. Zum Entwickeln von Webapplikationen muss somit nicht ausschließlich JavaScript zum Einsatz kommen. Wir haben uns mit Christian Dedek (OIO) und Thomas Huber (Trivadis) über die Vor- und Nachteile sowie den aktuellen Stand von WebAssembly unterhalten.