Kiosk-Artikel

Mehr erreichen mit weniger Code: Ein Einblick in Svelte

Svelte ist der neue Stern am Web-Frontend-Himmel. Es ist rasend schnell und seine minimale Bundle Size steckt andere Frameworks locker in die Tasche. Vor allem aber ist es ausdrucksstark: Minimaler Code führt zu maximalen Ergebnissen. Performancetuning durch den User mit Hilfe von Dingen wie shouldComponentUpdate? Nicht nötig. Boilerplate-Code, um eine Komponente zu erstellen? Nicht vorhanden. Gleichzeitig ist Svelte sehr umfangreich. Ein Animationspaket und eine State-Management-Lösung sind bereits enthalten. Wie schafft Svelte das? Darauf wollen wir in diesem Artikel einen Blick werfen. Gemeinsam machen wir die ersten Schritte mit Svelte und bauen die Mutter aller Apps: eine To-do-Liste.

Lock & Crete: Upgraden von ReadWriteLock

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.

Event-basiert und evolvierbar: Anwendungsentwicklung mit dem Axon Stack

Obgleich das Zielbild sowohl ein Monolith als auch eine Microservices-Architektur sein kann – das Axon Framework offeriert einen leichtgewichtigen Ansatz zur Implementierung Event-basierter Anwendungen. Dabei stützt sich das Framework auf gängige Muster aus dem Domain-driven Design (DDD) und begünstigt die Umsetzung einer Anwendung nach dem Architekturprinzip Command Query Responsibility Segregation (CQRS) und der Persistenzstrategie Event Sourcing. Durch diese Flexibilität und die Tatsache, dass das Axon Framework bestens mit dem Spring Framework integriert ist und damit ein quasistandardisiertes Programmiermodell unterstützt, ist es für den modernen Java-Entwickler einen Blick wert.

Ein Einblick in Svelte: Mehr erreichen mit weniger Code

Svelte ist der neue Stern am Web-Frontend-Himmel. Es ist rasend schnell und seine minimale Bundle Size steckt andere Frameworks locker in die Tasche. Vor allem aber ist es ausdrucksstark: Minimaler Code führt zu maximalen Ergebnissen. Performancetuning durch den User mit Hilfe von Dingen wie shouldComponentUpdate? Nicht nötig. Boilerplate-Code, um eine Komponente zu erstellen? Nicht vorhanden. Gleichzeitig ist Svelte sehr umfangreich. Ein Animationspaket und eine State-Management-Lösung sind bereits enthalten. Wie schafft Svelte das? Darauf wollen wir in diesem Artikel einen Blick werfen. Gemeinsam machen wir die ersten Schritte mit Svelte und bauen die Mutter aller Apps: eine To-do-Liste.

Mehr Flexibilität: Hartkodierten Code verringern

Die Verwendung von hartkodiertem Code geht wesentlich einfacher von der Hand: Man muss fürs Erste weniger überlegen, da der Code nur im Hier und Jetzt läuft. Zukünftige Änderungen werden mit dieser Technik hingegen erschwert. Sobald der Code um neue Funktionen oder Datentypen erweitert wird, muss er erst überarbeitet werden. Wir zeigen, mit welchen Bibliotheken, Klassen und Techniken sich hartkodierter Code reduzieren lässt.

Legacy mit DDD verbessern

Legacy-Code treibt die Entwicklungskosten in die Höhe und führt dazu, dass wir diese alten Softwaresysteme nicht mehr gerne anfassen. Ist das unvermeidbar? Können wir etwas tun? Mit Domain-driven Design (DDD) haben wir ein Werkzeug zur Hand, um Legacy-Code Schritt für Schritt wieder in den Bereich beherrschbarer Wartungskosten zu bringen.

Cloud-Services zum Entwickeln und Testen von mobilen Apps

Geräte- und plattformübergreifende Entwicklung ist angesagt, zum Beispiel mit Xamarin oder NativeScript. Möchte man Apps für mehrere Systeme erstellen, benötigt man die passende Systemumgebung aus Entwicklungsrechner und Testgeräten. Statt echter Hardware können Lösungen aus der Cloud helfen.

Classic Games Reloaded: Klassische KI gegen neuronales Netzwerk – Runde 1

Spieleklassiker erfreuen sich heutzutage einer großen Beliebtheit unter KI-Forschern und Programmierern, da die einfach strukturierten Spielewelten unter anderem ideale Testumgebungen für die Erforschung und Entwicklung von künstlichen neuronalen Netzwerken darstellen. Selbstverständlich werden auch wir uns diesem Trend nicht verschließen. Da wir jedoch die KI-Routinen unserer Spiele nicht von jetzt auf gleich völlig umkrempeln können, werden wir uns in diesem Artikel zunächst einmal mit den grundlegenden Aspekten von einfachen neuronalen Netzen beschäftigen.