Redaktion JAXenter

Beiträge dieses Autors

Softwarearchitektur: Langlebige Architektur, ohne Schulden!

Das Leben von Entwicklern ist heute nicht mehr Neuentwicklung – es ist Wartung. Denn nicht selten müssen Entwickler während der Implementierung häufig ungewollt von ihren Vorgaben abweichen. Das wiederum zieht mehrere Folgen mit sich: Die Komplexität nimmt zu, und es werden zunehmend mehr technische Schulden aufgebaut. Wartung und Erweiterung der Software werden immer aufwendiger. Welche Fehler in Softwareprojekten bei der Umsetzung der Architektur vermieden werden sollten und welche Prinzipien eingehalten werden müssen, um langlebige Architekturen zu entwerfen, expliziert Dr. Carola Lilienthal in ihrer Session auf der JAX 2019.

Classloading in Action

Classloader sind ein großartiges Stück Technologie in Java. Aber wie funktionieren sie eigentlich genau? Und wann setzt man sie am besten ein? Diese und weitere Fragen beantwortet Felix Becker in seiner Session auf der JAX 2019.

Neues Quickvote: Welche Java-Version nutzen Sie?

Die Release-Frequenz für Java-Versionen ist bekanntlich gestiegen. Damit steht man als Java-Entwickler nun alle 6 Monate vor der Frage, ob man das Update denn nun mitmachen möchte. Aktuell befindet sich Java 14 in der Mache, doch Java 8 gilt noch immer als die am meisten genutzte Version. Wie ist es um Ihre Update-Freudigkeit bestellt?

Shenandoah: Ultra-low Pause Time Garbage Collector

Shenandoah ist ein Garbage Collector der seit Java 12 standardmäßig mitgeliefert wird. Der ist „ultral-low pause“ – wow, das klingt toll! Aber was bedeutet es genau? Sollte man diesen bei sich im Projekt einsetzen? Und warum gibt es überhaupt noch einen weiteren Garbage Collector? Das erklärt Walery Strauch in der Session von der JAX 2019.

Abwärtskompatible APIs in der Praxis

Wenn ein API erst einmal live ist, ist es nicht mehr so einfach, es zu ändern. Doch jede noch so gut definierte Schnittstelle kommt irgendwann an den Punkt, an dem sie weiterentwickelt werden muss; sei es nur, weil sich die Anforderungen geändert haben. Hier kommt die Abwärtskompatibilität in Spiel. Arne Limburg erklärt in seiner Session auf der JAX 2019, welche Herausforderungen bei APIs zu bewältigen sind.

Ein Blick unter die Haube: Aufbau und Anwendung von Node.js

2009 war die Geburtsstunde von Node.js und seitdem hat sich viel getan. Die Geschichte der serverseitigen JavaScript-Plattform ist voller Licht und Schatten. Mittlerweile hat sich Node.js jedoch in der Webentwicklung etabliert und kommt als Standalone-Server, im Verbund mit anderen Technologien, als Basis für Desktopapplikationen oder zur Entwicklung von Kommandozeilenwerkzeugen zum Einsatz. Grund genug für uns, einen Blick unter die Haube der Plattform zu werfen und herauszufinden, wie Node.js aufgebaut ist und wie es sich verwenden lässt.

DevOps im Konzern: Autonomie von DevOps-Teams vs. Betriebssicherheit

Aus Sicht eines DevOps-Teams ist für eine hohe angestrebte Geschwindigkeit hohe Autonomie bei allen Architektur- und Implementierungsentscheidungen notwendig. Aus Sicht der DB Systel, die den stabilen IT-Betrieb der Deutschen Bahn sicherstellen soll, ist die Forderung nach Autonomie jedoch ein Risiko. Welche Lösungen es für hierfür gibt, erläutern Johannes Dienst & Thomas Kappatsch in ihrer Session auf der JAX 2019.

DDD-Artikelserie: Ubiquitous Language – Warum ist Sprache so wichtig?

Ein Element, das in der gesamten Domain-driven-Design-Literatur querschnittlich präsent ist, ist die Ubiquitous Language, die allgegenwärtige Sprache. Allgegenwärtig bezieht sich darauf, dass es sich hierbei um eine Sprache handelt, die von Softwareentwickler*innen und Fachexpert*innen gemeinsam gesprochen wird. Diese Sprache soll dann auch die Basis für die Entwicklung des Softwaremodells sein. Im Rahmen dieses Artikels gehen wir erst auf die Motivation für die Etablierung einer Ubiquitous Language ein, bevor schließlich das Potenzial und die Möglichkeiten für die Arbeit mit einer solchen Sprache vorgestellt werden. Weiterhin werden noch kurz die Vorgehensweisen zur Herleitung einer Ubiquitous Language erläutert.

Einführung in die funktionale Softwarearchitektur

Funktionale Programmierung (FP) verbreitet sich inzwischen auch in Deutschland immer weiter. Die Produktivitätssteigerungen durch FP sind schon lange bekannt, die Entwicklungstechnologien ausgereift. Allerdings führt sie auch zu Änderungen in der Softwarearchitektur. Was funktionale Softwarearchitektur eigentlich ist und welche Aspekte dabei von Bedeutung sind, erklärt Michael Sperber in seiner Session auf der JAX 2019.

DevOps: Vom SysAdmin zu Site Reliability Engineering (SRE)

DevOps hat einen großen Erfolg erzielt. Allerdings war dieser Erfolg nicht überall zu spüren – so auch im Bereich Operations. In den meisten Unternehmen ist es heute nicht ungewöhnlich, dass Ingenieure, die in die Nähe von Operations kommen, in Unterbrechungen, Tickets und wiederholter Arbeit versunken sind. Hier kommt eine neue Arbeitsweise bzw. eine neue Rolle namens Site Reliability Engineering (SRE) ins Spiel. Was es mit SRE auf sich hat und wie es die Arbeit von Operations and Systems Administration erleichtert, erklärt Damon Edwards in seiner Session auf der DevOpsCon 2019.

Agile Transformation: Die Organisation schlägt zurück!

Die Transition hatte einen guten Start: Einzelne Teams arbeiten agil, mit dem Management wurden Workshops für agile Führung durchgeführt und ein gutes Mindset beginnt sich zu entwickeln. Aber irgendwie läuft es doch nicht so wie erwartet. In seiner Session auf der JAX 2019 geht Christian Schneiker auf Beispiele aus der Praxis ein, die er in ihrer langjährigen Arbeit als Agile Coaches in Unternehmen erlebt hat. Er zeigt mögliche Lösungswege und Indikatoren auf, die dabei helfen können, eine Transition erfolgreich und vor allem nachhaltig durchzuführen.