<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>IDE &amp; Tools on JAVAPRO Germany</title><link>https://javapro.svenruppert.com/categories/ide--tools/</link><description>Recent content in IDE &amp; Tools on JAVAPRO Germany</description><generator>Hugo</generator><language>de-DE</language><lastBuildDate>Mon, 23 Feb 2026 07:02:10 +0000</lastBuildDate><atom:link href="https://javapro.svenruppert.com/categories/ide--tools/index.xml" rel="self" type="application/rss+xml"/><item><title>Reproduzierbare Entwicklungsumgebungen</title><link>https://javapro.svenruppert.com/reproduzierbare-entwicklungsumgebungen/</link><pubDate>Mon, 23 Feb 2026 07:02:10 +0000</pubDate><guid>https://javapro.svenruppert.com/reproduzierbare-entwicklungsumgebungen/</guid><description>&lt;h2 id="einleitung"&gt;Einleitung&lt;/h2&gt;
&lt;p&gt;Für die meisten Entwickler weckt der Begriff &lt;em&gt;Onboarding&lt;/em&gt; schlechte Erinnerungen und Frustration: veraltete Anleitungen im Wiki, fehlende Abhängigkeiten, undokumentierte Besonderheiten, inkompatible Tool-Versionen und das berüchtigte &lt;em&gt;„works on my machine“&lt;/em&gt;. Ganz gleich, ob neue Mitarbeiter einem Team beitreten oder erfahrene Entwickler zwischen Projekten wechseln – Der Einstieg in ein neues Projekt fühlt sich wie eine Schnitzeljagd an, der Stunden oder sogar Tage kostet, bevor produktive Arbeit möglich ist.&lt;/p&gt;
&lt;p&gt;Erfahrungsberichte und Studien stützen dieses Gefühl. Teams unterschätzen dabei oft, wie viel Produktivität, Motivation und Entwicklungsgeschwindigkeit durch diese Inkonsistenzen verloren gehen.&lt;/p&gt;</description></item><item><title>Beyond UML: Saubere Software-Architektur im Zeitalter von KI‑generiertem Code</title><link>https://javapro.svenruppert.com/beyond-uml-saubere-software-architektur-im-zeitalter-von-kigeneriertem-code/</link><pubDate>Mon, 02 Feb 2026 07:01:37 +0000</pubDate><guid>https://javapro.svenruppert.com/beyond-uml-saubere-software-architektur-im-zeitalter-von-kigeneriertem-code/</guid><description>&lt;h2 id="abstract"&gt;Abstract&lt;/h2&gt;
&lt;p&gt;Wir schreiben heute mehr Code in kürzerer Zeit als jemals zuvor. KI‑Systeme agieren dabei wie ständig verfügbare Juniorprogrammierer: Sie produzieren in Minuten tausende Zeilen Code – aber wer übernimmt dabei die Verantwortung für die Software-Architektur?&lt;/p&gt;
&lt;p&gt;Das eigentliche Problem ist daher oft nicht „schlechter KI‑Code“, sondern die wachsende Schwierigkeit für Menschen, den Überblick zu behalten und fundierte Architekturentscheidungen zu treffen.&lt;/p&gt;
&lt;p&gt;Dieser Artikel diskutiert eine Idee, um schnell ein mentales Modell von vorhandenem Code aufzubauen, Architekturprobleme früh zu erkennen und Änderungen gezielt vorzunehmen – ohne parallel eine statische Dokumentation pflegen zu müssen.&lt;/p&gt;</description></item><item><title>IntelliJ-Plugin „Save Actions“: Kontinuität durch Community-Maintenance</title><link>https://javapro.svenruppert.com/intellij-plugin-save-actions-kontinuitaet-durch-community-maintenance/</link><pubDate>Tue, 11 Nov 2025 11:48:59 +0000</pubDate><guid>https://javapro.svenruppert.com/intellij-plugin-save-actions-kontinuitaet-durch-community-maintenance/</guid><description>&lt;p&gt;Für viele Entwicklerinnen und Entwickler, die mit IntelliJ IDEA arbeiten, ist das &lt;strong&gt;Plugin „Save Actions“&lt;/strong&gt; seit Langem ein bewährter Begleiter, um eine konsistente und saubere Codebasis zu gewährleisten. Durch das automatische Ausführen konfigurierbarer Aktionen beim Speichern einer Datei – wie etwa das Optimieren von Imports, das Neuformatieren von Code, das Neuordnen von Klassenmitgliedern oder das Anwenden kleiner Quickfixes – trägt das Plugin dazu bei, dass Projekte teamübergreifend einheitlich bleiben.&lt;/p&gt;
&lt;p&gt;Nachdem die ursprüngliche Entwicklung von „Save Actions“ vor einigen Jahren eingestellt wurde, bestand das Risiko, dass das Plugin mit neueren IntelliJ-Versionen nicht mehr kompatibel sein würde. Um dies zu verhindern, übernahm &lt;em&gt;XDEV Software&lt;/em&gt; als verantwortlicher Maintainer die Pflege und stellt seither regelmäßig Aktualisierungen und Wartungsversionen über den JetBrains Marketplace bereit. Das Ziel ist unverändert: die Funktionsfähigkeit, Kompatibilität und Stabilität des Plugins für die stetig wachsende Entwicklergemeinschaft zu sichern, die darauf vertraut.&lt;/p&gt;</description></item><item><title>Map deinen Code - Meistere deine Architektur</title><link>https://javapro.svenruppert.com/map-deinen-code-meistere-deine-architektur/</link><pubDate>Mon, 13 Oct 2025 07:10:28 +0000</pubDate><guid>https://javapro.svenruppert.com/map-deinen-code-meistere-deine-architektur/</guid><description>&lt;p&gt;In Projekten mit Hunderttausenden von Codezeilen verliert man leicht den Überblick über Code, Architektur und Qualität. Sind wir noch auf Kurs? Blockieren wir uns selbst durch interne Abhängigkeiten? Oder stecken wir bereits fest? Software ist immateriell; wir können nicht sehen, in welchem Zustand sie wirklich ist.&lt;/p&gt;
&lt;p&gt;Um das herauszufinden, müssen wir systematisch prüfen, ob das, was die Entwickler im Sinn hatten, auch mit dem tatsächlichen Code übereinstimmt. Spoiler: Das tut es leider nicht. Die Gründe dafür sind, dass Software sich schneller verändert, als man hinterherkommt, dass jeder Entwickler seine eigenen Vorstellungen hat und zu guter Letzt, dass keiner das Gesamtbild hat.&lt;/p&gt;</description></item><item><title>KI-Tools für Jakarta EE</title><link>https://javapro.svenruppert.com/ki-tools-fuer-jakarta-ee/</link><pubDate>Mon, 05 May 2025 07:04:10 +0000</pubDate><guid>https://javapro.svenruppert.com/ki-tools-fuer-jakarta-ee/</guid><description>&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sdppIrhwbKk&amp;amp;list=PLFeSAZzYdUodZjQy6a3pCBl43UUem8_E3&amp;amp;index=16"&gt;&lt;figure class="post-figure"&gt;
 &lt;img src="https://javapro.svenruppert.com/uploads/sites/1/2025/04/Magazin-Artikel-Banner-2-1024x214.jpg" alt="" loading="lazy" decoding="async"&gt;
 
 
 
&lt;/figure&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Künstliche Intelligenz (KI) verändert die Welt der Softwareentwicklung, und so auch Jakarta EE. In der Vergangenheit verließen sich Entwickler bei der Erstellung von Anwendungen auf Projektgeneratoren, visuelle Gestalter und IDE-Autovervollständigung. Es mangelte diesen Instrumenten jedoch häufig an Anpassungsfähigkeit, Kontextbewusstsein und Effizienz. Dank KI-gestützter Tools wie &lt;strong&gt;Payara Starter&lt;/strong&gt; und &lt;strong&gt;Jeddict AI Assistant&lt;/strong&gt; sind diese Einschränkungen jetzt kein Problem mehr; sie beschleunigen außerdem Entwicklungsabläufe und ermöglichen es Entwicklern, sich auf Innovationen zu konzentrieren. In diesem Artikel wird anhand einer Konferenzanwendung als praktisches Beispiel untersucht, wie diese Werkzeuge die Entwicklung von Jakarta EE verbessern. Darüber hinaus werden zukünftige Möglichkeiten erörtert, darunter in Payara Server integrierte KI-Assistenten für die Einrichtung und Diagnose von Servern. &lt;/p&gt;</description></item><item><title>Überwinde 20 Jahre mit Migration Engineering</title><link>https://javapro.svenruppert.com/ueberwinde-20-jahre-mit-migration-engineering/</link><pubDate>Mon, 28 Apr 2025 07:14:31 +0000</pubDate><guid>https://javapro.svenruppert.com/ueberwinde-20-jahre-mit-migration-engineering/</guid><description>Java hat sich in den letzten 30 Jahren stark gewandelt. Viele Organisationen haben Probleme mitzuhalten, Migration Engineering hilft hier.</description></item><item><title>Hitchhiker's Guide to Java Performance</title><link>https://javapro.svenruppert.com/hitchhikers-guide-to-java-performance/</link><pubDate>Wed, 02 Apr 2025 12:17:42 +0000</pubDate><guid>https://javapro.svenruppert.com/hitchhikers-guide-to-java-performance/</guid><description>&lt;h3 id="vergangenheit-gegenwart-und-zukunft"&gt;Vergangenheit, Gegenwart und Zukunft&lt;/h3&gt;
&lt;p&gt;In den letzten 30 Jahren hat sich Java von einer exotischen „write once, run anywhere“-Sprache zu einer der weltweit dominierenden Plattformen für die Softwareentwicklung entwickelt. In den Anfangsjahren galt Java im Vergleich zu Sprachen wie C/C++ zu Recht als langsam, was vor allem auf den anfänglichen Interpreter-Ansatz zurückzuführen war. Die letzten 30 Jahre haben bewiesen, dass das VM-Konzept mit der adaptiven Optimierung der HotSpot-Engine langfristig die effizientere Lösung ist.&lt;/p&gt;</description></item><item><title>Die Kunst der statischen Codeanalyse</title><link>https://javapro.svenruppert.com/die-kunst-der-statischen-codeanalyse/</link><pubDate>Tue, 04 Feb 2025 22:49:43 +0000</pubDate><guid>https://javapro.svenruppert.com/die-kunst-der-statischen-codeanalyse/</guid><description>&lt;p&gt;Die meisten Java-Entwickler (und nicht nur) haben zumindest eine Art statisches Analysetool verwendet, um eine Aufgabe wie (um nur einige zu nennen) auszuführen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ableiten von Quellcodemetriken wie Codezeilen oder zyklomatische Komplexität;&lt;/li&gt;
&lt;li&gt;Entdecken von Fehlern, Schwachstellen oder Code-Smells wie ungenutzten Variablen (was beliebte IDEs typischerweise tun);&lt;/li&gt;
&lt;li&gt;Durchführen eines automatisierten Refactorings oder einer Code-Vervollständigung;&lt;/li&gt;
&lt;li&gt;Durchsetzung von Code- und Qualitätsstandards.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Um eine statische Codeanalyse durchzuführen, benötigen wir normalerweise eine geeignete Darstellung des Quellcodes, die für die Analyse geeignet ist. Eine Programmiersprache kann durch eine formale Grammatik beschrieben werden. Darüber hinaus kann ein Parser erstellt oder generiert werden, indem man den Regeln einer formalen Grammatik folgt, um aus dem Quellcode eine ordnungsgemäße Darstellung (normalerweise einen Analysebaum) zu erstellen. Abhängig von der Art der Sprache, die wir darstellen möchten, können wir unterschiedliche Arten formaler Grammatiken verwenden:&lt;/p&gt;</description></item><item><title>Bewährte Praktiken für CI/CD Pipelines</title><link>https://javapro.svenruppert.com/bewaehrte-praktiken-fuer-ci-cd-pipelines/</link><pubDate>Wed, 30 Nov 2022 17:51:53 +0000</pubDate><guid>https://javapro.svenruppert.com/bewaehrte-praktiken-fuer-ci-cd-pipelines/</guid><description>Diese Praktiken sollen eine Vorstellung davon vermitteln, wie einige Probleme in modernen CI/CD-Pipelines gelöst und was vermieden werden sollte. Verwenden Sie diese Muster als Richtlinie beim Implementieren Ihrer eigenen Pipelines.</description></item><item><title>Loggen mit Struktur</title><link>https://javapro.svenruppert.com/loggen-mit-struktur/</link><pubDate>Fri, 04 Dec 2020 11:36:38 +0000</pubDate><guid>https://javapro.svenruppert.com/loggen-mit-struktur/</guid><description>&lt;p&gt;&lt;strong&gt;Log-Server bieten weit mehr als eine Volltextsuche über textuelle Log-Meldungen an. Sie sind komplette Datenbanksysteme mit komplexen Auswertemöglichkeiten. Wenn Log-Meldungen passend zu den Datenbankfähigkeiten erstellt werden, ergeben sich neue Möglichkeiten im Umgang mit Log-Daten.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Java-Log-Bibliotheken zum effizienten Schreiben von Log-Meldungen gibt es seit über 20 Jahren. Ursprünglich dienten sie als Hilfe beim Debuggen während der Entwicklung und zur Diagnose von Produktionsproblemen. Im produktiven Unternehmenseinsatz hatten Entwickler meistens keinen Zugriff auf die produktiven Log-Dateien. Die Dateien mussten erst von einem Administrator angefordert werden, der einem dann die hoffentlich richtigen Log-Dateien bereitstellte. Unter solchen Umständen dauerte es oft Stunden, bis ein Problem diagnostiziert werden konnte. Mit dem Aufkommen von Microservice-Architekturen und verteilten Anwendungen in der Cloud steigt die Anzahl der relevanten Log-Dateien rasant an. In der Vergangenheit gab es Projekte mit einer Microservice-Architektur, bei denen allein von den Java-Anwendungen über 40 Log-Dateien auf vier verschiedenen Maschinen gleichzeitig geschrieben wurden. Die Problemdiagnose nur mit Texteditoren und UNIX-Kommandozeilen-Tools ist bei einer solchen Anzahl von Dateien keine erfreuliche Aufgabe. Ein Log-Server, der über eine grafische Oberfläche eine Volltextsuche über alle Log-Dateien ermöglicht, ist unter diesen Umständen eine große Arbeitserleichterung. Da der Zugriff auf den Log-Server nicht den direkten Zugriff auf das Produktionssystem erfordert, ist es – abgesehen vom Datenschutz – auch unkritisch, dem Entwickler Zugriff auf die Produktions-Logs zu geben. Es dauert dann nicht mehr Stunden, bis ein Entwickler die richtigen Log-Meldungen sehen kann, sondern er kann ohne fremde Hilfe tätig werden und hat praktisch Live-Zugriff.&lt;/p&gt;</description></item><item><title>Be part of the future of JavaFX - JFX Adopters Meeting 2020</title><link>https://javapro.svenruppert.com/be-part-of-the-future-of-javafx-jfx-adopters-meeting-2020/</link><pubDate>Mon, 21 Sep 2020 17:03:37 +0000</pubDate><guid>https://javapro.svenruppert.com/be-part-of-the-future-of-javafx-jfx-adopters-meeting-2020/</guid><description>&lt;p&gt;&lt;strong&gt;&amp;ldquo;Write once, run anywhere&amp;rdquo; is not only the slogan but also the key advantage of this multi-platform-development launched by Java.&lt;/strong&gt; JavaFX - a next-generation client application platform for desktop, mobile and embedded systems built on Java. It enables the development of modern applications with Rich Media content, audio, video and provides an attractive experience when using applications developed with it. JavaFX was originally part of Java SE Development Kit as JDK 8. It is fully open-sourced and detached from the Development Kit since JDK 11. This enables individuals and companies alike to join the community and drive the future of JavaFX. A JFX Adopters Meeting was held 2018 in Munich, to exchange information on current projects and future plans. Representatives of the JavaFX ‘ecosystem’ (e.g. Oracle, Gluon, BestSolution, Karakun, JPro) attended the meeting, to discuss a viable picture of JavaFX with the attendees. Concerns raised at the time regarding the difficulty in contributing code changes and lack of support for 3D-rendering have now been overcome. The move from JavaFX Mercurial Repository to Git and OpenJFX on GitHub has drastically reduced the turnaround time and facilitated developers to integrate their own fixes in official JavaFX code. Lead developers have been freed up to concentrate on future development whilst the community contributes to fixing and stabilizing JavaFX. Contributions and accepted pull requests have shown that the process of fixing bugs, instead of only reporting in a bug database, is now becoming best practice and JavaFX is back to being a highly active initiative. The number of new projects started with JavaFX as user interface technology has increased. Integrated devices, like user interfaces in the car or machines, have come more into focus. Furthermore, due to the separation of JavaFX and the JDK with JDK11, it is now finally possible to compile JavaFX like any other open-source library. Consequently, with the greatly increased development speed, the JavaFX developer is more independent than ever before. Since JavaFX13, its support for 3D-Rendering has greatly improved. With the new NIO-Support for writable images, it is now possible to integrate VLC, WebGL, OpenGL into existing JavaFX applications. Furthermore, Oracle has announced the extension of its commercial support for JavaFX 8 to the year 2025: a total of 11 years, considering Java SE Development Kit 8 was released in 2014. Compared to other UI-Toolkits (I’m pointing to you, Angular), this is a very reliable foundation for Desktop-Development, which can also be used for Mobile Applications (Gluon) and Web Applications (JPro) with a reliable API that will be stable for decades. Nevertheless, for successful further development of JavaFX, a strong ecosystem is needed, particularly from adopter companies contributions. The next JFX Adopters online meeting will be held virtual on Wednesday, the 14th of October 2020. To register for the JFX Adopters Meeting online on Wednesday, the 14th of October 2020 please click on the following URL: &lt;a href="http://zeiss.com/jfx-adopters-meeting"&gt;http://zeiss.com/jfx-adopters-meeting&lt;/a&gt; Further readings: Oracle Java Client Roadmap Updates: &lt;a href="https://blogs.oracle.com/java-platform-group/java-client-roadmap-updates"&gt;https://blogs.oracle.com/java-platform-group/java-client-roadmap-updates&lt;/a&gt; OpenJFX: &lt;a href="https://openjfx.io/"&gt;https://openjfx.io/&lt;/a&gt; Gluon: &lt;a href="https://gluonhq.com/"&gt;https://gluonhq.com/&lt;/a&gt; JPro: &lt;a href="https://www.jpro.one/"&gt;https://www.jpro.one/&lt;/a&gt; Karakun: &lt;a href="https://karakun.com/"&gt;https://karakun.com/&lt;/a&gt;   [accordion-group title=&amp;ldquo;Autor - Christian Heilmann&amp;rdquo;] &lt;strong&gt;Christian Heilmann&lt;/strong&gt; is software architect at Carl Zeiss Meditec AG in Munich [/accordion-group]&lt;/p&gt;</description></item></channel></rss>