Quicktest ok.
Cool die neuen Code Action zum erzeugen von properties-versionen in pom.xml Dateien.
Auch die update Version geht nun sehr flink, Details siehe im Video


Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Programmierung
Quicktest ok.
Cool die neuen Code Action zum erzeugen von properties-versionen in pom.xml Dateien.
Auch die update Version geht nun sehr flink, Details siehe im Video

In einer Welt, in der Technologie und Elektronik einen immer größeren Stellenwert einnehmen, ist die Arduino IDE (Integrated Development Environment) zu einem unschätzbar wertvollen Werkzeug geworden. Arduino ist weithin bekannt für seine Benutzerfreundlichkeit und seine Fähigkeit, Menschen jeden Alters in die Welt der Elektronik und Programmierung einzuführen.
Die Arduino IDE hat sich als unschätzbares Werkzeug für Entwickler, Hobbyisten und Bildungseinrichtungen etabliert. Mit ihrer Benutzerfreundlichkeit, ihrer lebendigen Community und ihren umfangreichen Ressourcen bietet sie eine ideale Plattform, um in die Welt der Elektronik und Programmierung einzutauchen. Ob Sie ein Anfänger sind, der gerade erst anfängt, oder ein erfahrener Entwickler, der komplexe Projekte erstellen möchte, die Arduino IDE bietet die Werkzeuge und Unterstützung, die Sie benötigen, um Ihre Ideen in die Realität umzusetzen.

Hier ein paar allgemeine Vorteile auch zur neuen Version: „Die Arduino IDE 2.2.1: Ein Werkzeug für Innovation und Kreativität in neuer Version mal was anderes als iPhone 17 plus“ weiterlesen
Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS.
Der Key Store speichert private Schlüssel und zugehörige Zertifikate zur Identifizierung und Authentifizierung.
Der Trust Store speichert Zertifikate von vertrauenswürdigen Zertifizierungsstellen zur Überprüfung der Glaubwürdigkeit von Remote-Entitäten.
Beide Speicher sind wichtig, um eine sichere Kommunikation über HTTPS und andere verschlüsselte Protokolle zu gewährleisten. Der Key Store ermöglicht die Identifizierung und Authentifizierung, während der Trust Store das Vertrauen in die Gegenstelle sicherstellt. Hier die Unterschiede als Mindmap und als Tabelle:

„Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS“ weiterlesen
Warum die Konvertierung von MP4 zu GIF sinnvoll sein kann?

Die Konvertierung von Dateiformaten ist eine gängige Praxis in der digitalen Welt, die verschiedene Zwecke erfüllen kann. Ein solches Szenario ist die Umwandlung von MP4-Videos in GIF-Animationen. Obwohl beide Formate ihre eigenen Vorzüge haben, gibt es bestimmte Situationen, in denen die Konvertierung von MP4 zu GIF durchaus sinnvoll sein kann.
Zum Beispiel bietet Blender keinen GIF export. Deshalb habe ich ein kleines Script geschrieben, welche mit ffmpeg die Umwandlung durchfürhrt. Wir haben z.B. dieses MP4 Video „MP4 ins GIF Format umwandeln (mp2togif) mit ffmpeg“ weiterlesen

Unterstriche in JUnit 5 Test-Methoden und Klassen können auch per Default automatisch für alle Tests nach Leerzeichen konvertiert werden. Es sieht auch gleich besser aus:

Dazu einfach im src/test/resources Verzeichnis die Datei
junit-platform.properties anlegen mit diesem Eintrag: „Unterstriche in JUnit 5 Tests automatisch nach Leerzeichen konvertieren“ weiterlesen

Das „Haus vom Nikolaus„, ein einfaches geometrisches Muster aus fünf Linien, das die Form eines stilisierten Hauses darstellt, mag auf den ersten Blick wie eine unschuldige Kindermalerei wirken. Doch hinter diesem scheinbar simplen Muster verbirgt sich eine faszinierende Verbindung zur Graphentheorie, einem Teilgebiet der Mathematik, das sich mit den Eigenschaften und Beziehungen von Graphen beschäftigt. Dann mal los, und ein kleines Java Programm dazu.
Was ist das „Haus vom Nikolaus“? „Das „Haus vom Nikolaus“ mit seinen 88 Möglichkeiten und seine Bedeutung in der Graphentheorie“ weiterlesen
Das Königsberger Brückenproblem ist eine klassische mathematische Herausforderung, die im 18. Jahrhundert entstand und einen wichtigen Einfluss auf die Entwicklung der Graphentheorie hatte. Es handelt sich um eine Fragestellung bezüglich der Überquerung von Brücken über den Flüssen Pregel und seinen Inseln in der Stadt Königsberg (heute Kaliningrad, Russland). Das Problem wurde erstmals von dem Schweizer Mathematiker Leonhard Euler im Jahr 1735 gelöst und legte den Grundstein für die moderne Graphentheorie.
In Königsberg gab es sieben Brücken, die die Flüsse Pregel und die beiden Inseln verbunden haben. Die Frage war, ob es möglich war, die Stadt zu durchqueren, indem man jede Brücke nur einmal überquerte und schließlich an einem beliebigen Punkt endete.

Euler bewies, dass es keine Möglichkeit gibt, das Königsberger Brückenproblem zu lösen. Er zeigte, dass mindestens zwei der vier Landpunkte eine ungerade Anzahl von Brücken haben müssten, um eine Lösung unmöglich zu machen. Dies führte zur Entwicklung der Graphentheorie, bei der das Problem als ein Graph dargestellt werden kann, wobei die Landpunkte die Knoten und die Brücken die Kanten des Graphen sind.
Da kommt nun die Implementierung mit JGraphT in Java ins Spiel. „Königsberger Brückenproblem oder etwas Graphentheorie mit jgrapht in Java“ weiterlesen
Picocli: Eine leistungsstarke Bibliothek für die Erstellung von Befehlszeilenanwendungen. Hier habe ich schon oft davon berichtet. Da es im Juni die Version 4.7.4 gab, mal hier ein Beispiel dazu.

Die Entwicklung von Software, sei es in Form von Anwendungen oder Tools, erfordert oft die Integration von Befehlszeilenfunktionalität, um Benutzern eine effiziente Interaktion mit der Software zu ermöglichen. Eine der bemerkenswertesten Bibliotheken, die diese Aufgabe erleichtert, ist „Picocli„. Picocli ist eine Java-basierte Open-Source-Bibliothek, die Entwicklern dabei hilft, robuste und benutzerfreundliche Befehlszeilenanwendungen zu erstellen.
Was ist Picocli? „Every main method deserves picocli!“ weiterlesen
Der „Maven Embedder“ ist eine Möglichkeit, Maven in Java-Anwendungen einzubetten und Maven-Funktionen programmatisch aufzurufen. Damit kannst du Maven in deinem Code verwenden, um Build- und Dependency-Management-Funktionen auszuführen, ohne externe Prozesse aufrufen zu müssen.
Man braucht nur eine Abhängigkeit:
|
1 2 3 4 5 |
<dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-embedder</artifactId> <version>4.0.0-alpha-7</version> </dependency> |
Das Apache Maven Build-Tool ist ein weit verbreitetes Werkzeug in der Java-Entwicklungswelt, das die Automatisierung von Build-, Test- und Abhängigkeitsverwaltungsaufgaben erleichtert. Normalerweise wird Maven über die Befehlszeile oder in Build-Skripten verwendet. In einigen Szenarien kann es jedoch erforderlich sein, Maven in Java-Anwendungen einzubetten, um Maven-Funktionen programmatisch aufzurufen. Das Maven Embedder ermöglicht genau das. Was ist der Maven Embedder? „Maven Embedder“ weiterlesen
Zum Wochenende mal ein kleines Quiz. Läuft der Test grün oder rot?

|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import static org.junit.jupiter.api.Assertions.assertEquals; import org.junit.jupiter.api.Test; /** * Kleines Quiz am Freitag. * * @author Thomas Wenzlaff * */ class Quiz42 { private static void is42(String auswertung) { if (auswertung.startsWith("42")) { auswertung = "0815"; } else { auswertung = "4711"; } } @Test void isStart42Test() { String auswertung = "4212345"; Quiz42.is42(auswertung); assertEquals("4212345", auswertung); // Ist der Test grün oder rot? System.out.println("Das Ergebnis ist: " + auswertung); } } |
Die Lösung … „Rot oder Grün, das ist hier die Frage“ weiterlesen
Leider keine Zeit für eine Reise nach Nashville, TN zum Patient Blood Management and Blood Health: They Top the Charts! Annual Meeting. Dann mal die gestern veröffentlichte Version von ArchUnit testen.

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten. Durch die Möglichkeit, deklarative Regeln zu erstellen und automatisierte Tests zu schreiben, hilft ArchUnit, konsistente und hochwertige Software zu entwickeln. „Unit test your Java architecture a new release of ArchUnit (v1.1.0) is out.“ weiterlesen
Ein einfaches pinout gibt auf dem Pi die Belegung aus. Cool! Hier die Ausgabe eines Raspberry Pi Zero W

Der Raspberry Pi ist ein vielseitiger Einplatinencomputer, der in den letzten Jahren enorm an Popularität gewonnen hat. Eines seiner bemerkenswertesten Merkmale ist die General Purpose Input Output (GPIO) Schnittstelle. GPIO ermöglicht es dem Raspberry Pi, mit der physischen Welt zu interagieren, indem es digitale Signale sendet und empfängt. „pinout – die GPIO-Schnittstelle des Raspberry Pi“ weiterlesen
Manchmal will man eine Liste aller Abhängigkeite eines Maven-Projektes in einer eigenen Datei.

Das geht einfach mit dem maven-dependency-plugin.
Die effiziente Verwaltung von Abhängigkeiten ist ein grundlegendes Element bei der Entwicklung von Java-Projekten. Maven ist ein weit verbreitetes Build-Management-Tool, das Entwicklern ermöglicht, Abhängigkeiten zu verwalten und den Build-Prozess zu automatisieren. Das Maven-Dependency-Plugin ist eine Erweiterung von Maven, die speziell für die Handhabung von Abhängigkeiten entwickelt wurde.
Also einfach das Plugin in der pom.xml einbinden z.B.: „Wie kann eine Datei-Liste aller Maven Abhängigkeiten eines Projektes erstellt werden?“ weiterlesen

Was gibt es Neues? „Neue Eclipse Version 2023-06“ weiterlesen
In einer zunehmend vernetzten und digitalisierten Welt sind Softwarekomponenten und -anwendungen allgegenwärtig. Unternehmen verlassen sich auf komplexe Softwarelösungen, um ihre Geschäftsprozesse zu unterstützen und innovative Produkte und Dienstleistungen anzubieten. Angesichts der wachsenden Bedrohungen durch Sicherheitslücken und Compliance-Anforderungen wird die Transparenz über die verwendeten Softwarekomponenten immer wichtiger. Hier kommt die Software Bill of Materials (SBOM) ins Spiel, die eine detaillierte und strukturierte Auflistung aller Softwarekomponenten eines Projekts bietet. Vor einem Jahr hatte ich schon mal davon berichtet. In diesem Artikel werden die Vorteile einer SBOM genauer betrachtet.

Transparenz über Softwarekomponenten:
Eine SBOM ermöglicht eine umfassende Transparenz über die verwendeten Softwarekomponenten in einem Projekt. Sie listet alle Komponenten auf, einschließlich Open-Source-Software, Drittanbieterbibliotheken und proprietäre Codebasis. Dies schafft Klarheit über den Ursprung und die Lizenzierung der Software, was für die Einhaltung von Compliance-Anforderungen und die Vermeidung von rechtlichen Problemen von entscheidender Bedeutung ist.
„Software Bill of Materials (SBOM) mit CycloneDX Maven Plugin leicht erzeugen“ weiterlesen
Git ist ein weit verbreitetes verteiltes Versionsverwaltungssystem, das eine effiziente und flexible Möglichkeit bietet, Code zu verwalten. Mit Git können Entwickler Änderungen am Code nachverfolgen, zusammenführen und rückgängig machen. Es ist einfach zu erlernen, jedoch mächtig genug, um komplexe Projekte zu handhaben.
Git ermöglicht auch die Zusammenarbeit von Teams, indem es die Verwaltung von Code-Änderungen und die Integration von Features erleichtert.

Am 12.3.2023 ist eine neue Version von git mit diesen Releasenotes veröffentlicht worden. Wenn das kein Grund ist mal ein update durchzuführen. „git -v = git version 2.40.0“ weiterlesen
Wie in diesem Beitrag beschrieben, kann leicht ein REST-Server in 5 Minuten erstellt werden. Auch die Sicherheit kann in 5 Minuten mit Helmet erweitert werden, wie hier beschrieben. Wer weitere 5 Minuten hat, kann auch auf ein Verzeichnis mit statischen Resourcen zugreifen.

Eine statische Webseite ist eine Art von Webseite, bei der die Inhalte für jede Seite im Voraus erstellt werden und nicht dynamisch auf Anfrage generiert werden. Dies bedeutet, dass der Inhalt jeder Seite statisch ist und sich nicht ändert, es sei denn, jemand bearbeitet manuell die HTML-Dateien, die die Seiten darstellen.
Statische Webseiten werden oft verwendet, wenn der Inhalt der Seite selten oder nie aktualisiert wird, z.B. bei Landingpages, Informationsseiten oder Blogs mit selten aktualisierten Inhalten. Sie sind einfach zu erstellen und zu verwalten und erfordern keine spezielle Software oder Programmierkenntnisse. „REST-Server mit statischen HTML Seiten bzw. Bildern in 5 Minuten erstellen“ weiterlesen
REST (Representational State Transfer) Server sollten genutzt werden, wenn es darum geht, eine Web-API (Application Programming Interface) bereitzustellen, die es ermöglicht, Daten zwischen verschiedenen Systemen auszutauschen.
REST ist ein Architekturstil, der sich auf die Verwendung von HTTP-Methoden wie GET, POST, PUT und DELETE konzentriert, um Ressourcen zu erstellen, abzufragen, zu ändern und zu löschen. Ein REST-Server kann in fast jeder Programmiersprache entwickelt werden und ist eine gute Wahl für die Erstellung von Microservices oder für die Integration von Anwendungen mit anderen Systemen.

Express.js ist ein web Application Framework für Node.js, das es Entwicklern erleichtert, eine HTTP-Server zu erstellen und Routing-Funktionalitäten bereitzustellen. Es ist eines der am weitesten verbreiteten Framework für Node.js und wird oft für die Erstellung von Webanwendungen und REST-APIs verwendet. „REST-Server in 5 Minunten erstellen mit Node.js and Express.js“ weiterlesen
Twitter ist auch im Darknet über diese Adresse erreichbar:
|
1 |
https://twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5kshju4avyoid.onion |
Also bin auch ich und jeder Twitter User im Darknet erreichbar, hier mein Link
|
1 |
https://twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5kshju4avyoid.onion/programmierung |

Der Anonymisierungsdienst Tor ist weltweit und unabhängig von Internetblockaden erreichbar. Dann mal gleich den Tor-Browser updaten:
„Twitter auch per Tor über Onion-Routing-Netzwerk (Darknet) erreichbar“ weiterlesen
ArchUnit 1.0.1 ist nun seit 2 Wochen verfügbar. Wenn das kein Grund für ein Quicktest ist:

Was gibt es Neues? „Nach Elfmeterschießen mal die neue ArchUnit 1.0.1 testen“ weiterlesen