Java

Shenandoah und ZGC: Weniger Pausenzeiten bei der Garbage Collection

Mit Shenandoah und ZGC gibt es im OpenJDK erstmals zwei Low-Pause Garbage Collectors, die die berüchtigten Pausenzeiten von Java-Anwendungen auf Millisekunden beschränken. Wir stellen die Arbeitsweise der beiden Collectors vor, messen mit Hilfe einer praxisnahen Benchmark, ob die Collectors halten, was sie versprechen, und diskutieren, wie sich Shenandoah und ZGC voneinander abgrenzen.

HiveMQ vorgestellt: Automatisiertes Testen von MQTT-Applikationen

In einem Großteil der IoT-Anwendungsfälle wird die Kommunikation zwischen Geräten mit dem MQTT-Protokoll realisiert. Typische Anwendungen sind beispielsweise Steuergeräte, Gateways, mobile Geräte, Backend-Systeme und eine Vielzahl weiterer Microservices. In Einsatzgebieten mit großen IoT-Netzwerken sind die Anforderungen an die Softwarequalität der MQTT-Applikationen besonders hoch, da sich hier Fehler katastrophal auswirken können. Automatisierte Softwaretests sind ein fundamentaler Teil davon, diese hohe Qualität zu garantieren, da Fehler in der Implementierung schnell erkannt und behoben werden können. Die HiveMQ-Testcontainer-Bibliothek wurde geschaffen, um MQTT-Anwendungen in einer isolierten Umgebung testen zu können.

Enterprise Tales: Mehr Backend wagen – im Frontend!

Das Frontend ist seit jeher ein wichtiger Bestandteil der meisten Anwendungen. Mit dem Aufschwung von Single Page Applications (SPA) hat sich die Komplexität jedoch im Gegensatz zu Ansätzen, bei denen das gesamte HTML im Backend erzeugt wird, enorm erhöht. Sofern die Wahl auf eine SPA als Frontend-Lösung fällt, steht natürlich sofort eine wichtige Frage im Raum: Wie kann man als Entwickler die neue Komplexität im Frontend bändigen?

DevOps im Test: Verbesserter ROI dank DevOps Testing

DevOps galt lange Zeit als ein großer Hype. Nun gehen Unternehmen das Thema strategischer an und suchen nach Einsatzgebieten, in denen sich mit dem Ansatz die größte Rendite erzielen lässt. Dieser Artikel zeigt, wie sich mit DevOps-Methoden ein effizienteres Testing und damit ein besserer Return on Investment (ROI) realisieren lässt.

Java 15 erschienen: Das sind die Neuerungen im OpenJDK 15

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.

Exploiting in Java: Deserialisierungs- schwachstellen im Java-Programmcode

Der Stack Overflow ist das am meisten anzutreffende Sicherheitsproblem in der Softwareentwicklung. Bei einem solchen kann ein Angreifer mittels einer zu langen Eingabe einen Programmspeicher zum Überlaufen bringen, sprich über die Grenzen eines Arrays hinausschreiben und so Programme zum Absturz bringen, interne Daten verfälschen und den Programmfluss ändern. In Java gibt es zwar keinen klassischen Stack Overflow, aber ähnliche Deserialisierungsschwachstellen.

Automatisierung, Extreme Java & xGoals – Unsere Top-Themen der Woche

Na, schon alle Geschenke für Weihnachten besorgt? Diesen Satz wird man wohl bald öfter hören, denn die Vorweihnachtszeit hat beinahe schon begonnen. Schon jetzt findet man das winterliche Süßigkeiten-Sortiment im Regal beim Lebensmittelhändler und die ersten werden wohl auch schon über Dekorationen für das Fest der Liebe nachdenken. Hier auf JAXenter? Nun, wir haben auch ein paar Geschenke für unsere Leser…

Java Magazin 11.20 erschienen: Testing im Java-Labor

Als Marie Curie Ende des 19. Jahrhunderts das Radium erforschte und sich mit allerlei radioaktiven Substanzen vergiftete, wusste man um die Gefährlichkeit der Strahlung noch nicht so richtig Bescheid. Es gab zwar durchaus Anzeichen dafür, dass ein gewisser Zusammenhang zwischen schlimmen Erkrankungen und radioaktivem Material bestehen könnte, Madame Curie allerdings entschied sich dafür, dem keine besondere Beachtung zu schenken.

Extreme Java: Lock & Crete

Die Java-Klasse ReentrantReadWriteLock kann einen Read Lock nicht auf einen Write Lock upgraden. Kotlins Erweiterungsfunktion ReentrantReadWriteLock.write() schummelt ein wenig, indem sie den Read Lock vor dem Upgrade loslässt und so die Tür für Race Conditions öffnet. Eine bessere Lösung ist StampedLock, das über eine Methode verfügt, mit der versucht wird, den Lock in einen Write Lock umzuwandeln.

Mach die 15: Ein Ausblick auf die für September geplante JDK-Version 15

Vor dem Update und nach dem Update ist oft der gleiche Zustand. Was im Bereich der Embedded-Software und beim Design von Platinen seit Jahren gilt, ist auch für Java-Programmierer mittlerweile Teil des Alltags. Für September 2020 wird die finale Auslieferung von Java 15 erwartet. Erfreulicherweise gibt es schon jetzt Möglichkeiten, um sich die neuen Funktionen näher anzusehen. Wie man das unter Windows bewerkstelligt und auf welche Lustigkeiten sich Java-Entwickler in der nächsten Zeit einstellen dürfen, klärt dieser Artikel.

Java 15 & Eclipse 2020-09 – Unsere Top-Themen der Woche

Die vergangene Woche stand ganz im Zeichen von Java. Während vorletzte Woche bereits JavaFX 15 erschienen ist, folgte – termingerecht – in der vergangenen Woche die Veröffentlichung von Java 15. Mit an Bord sind 14 Verbesserungen, die zuvor als JEPs diskutiert und auf Herz und Nieren geprüft wurden. Außerdem erschien vor Kurzem die Eclipse IDE 2020-09. Die kann mittlerweile aber nicht mehr nur für Java verwendet werden.