Magento Blog: Anleitungen und Praxiswissen | Seite 177 | mironsoft
Magento Blog
-
19.09.2025
Architekturregeln, die nur in Dokumenten existieren, werden gebrochen. Mit PHPUnit, PHP-Arch und der Reflection API lassen sich Schichtengrenzen, Modulabhängigkeiten und Designregeln als ausführbare Tests formulieren – die sofort anschlagen, wenn eine Klasse die falsche Schicht aufruft oder ein Modul eine verbotene Abhängigkeit einführt.
-
18.09.2025
Domain Driven Design in Symfony scheitert selten am strategischen Verstaendnis der Fachdomaene und fast immer an der taktischen Umsetzung im Code. Dieser Artikel zeigt konkret, wie Value Objects, Aggregate Grenzen, Repository Interfaces und Domain Events in Symfony implementiert werden, ohne dass Doctrine Annotationen die reine Domain Schicht verschmutzen.
-
18.09.2025
Jede neue Datenbankverbindung kostet Speicher, CPU-Zeit und Zeit fuer den Verbindungsaufbau selbst. Connection Pooling haelt eine begrenzte Anzahl wiederverwendbarer Verbindungen offen und verhindert, dass eine Anwendung unter Last mehr Verbindungen oeffnet, als die Datenbank verkraften kann. Wer Pool-Groesse falsch dimensioniert, produziert entweder Verbindungsfehler oder verschenkt Kapazitaet.
-
18.09.2025
Featured Snippets, KI-Zusammenfassungen und direkte Antworten in Suchergebnissen sorgen dafür, dass ein wachsender Anteil aller Suchanfragen beantwortet wird, ohne dass jemals ein Klick auf die eigentliche Quelle erfolgt. Dieser Artikel ordnet ein, wie groß dieser Effekt tatsächlich ist, welche alternativen Wertschöpfungsmodelle jenseits von reinem Klick-Traffic realistisch funktionieren, und wie sich eine ehrliche, belastbare Erwartungshaltung an künftige Content-Investitionen formulieren lässt.
-
18.09.2025
Ein ETL-Skript, das beim ersten Testlauf funktioniert, aber beim zweiten Lauf doppelte Datensätze erzeugt oder bei einem Teilfehler die Zielquelle in einem inkonsistenten Zustand hinterlässt, ist keine Seltenheit. Claude hilft, diese Fallstricke von Anfang an zu vermeiden, indem es Idempotenz, Fehlerbehandlung und Datenqualitätsprüfungen direkt in die generierte Extraktions-, Transformations- und Ladelogik einbaut. Dieser Artikel zeigt den kompletten Entwicklungsprozess an einem realistischen Migrationsbeispiel.
-
18.09.2025
Fibers geben PHP-Code die Fähigkeit, Ausführung an einer beliebigen Stelle im Aufrufstapel zu unterbrechen und später exakt dort fortzusetzen, ohne die aufrufende Logik in Callbacks oder Generatoren zu zerlegen. Dieser Artikel geht die Fiber-Klasse Schritt für Schritt durch, von start und resume über Fehlerbehandlung mit throw bis zu einem eigenen kooperativen Scheduler und den tatsächlichen Kosten bei Speicher und Stack.
-
18.09.2025
Während die JavaScript-Community über die nächste Framework-Version diskutiert, lösen Alpine.js und htmx zusammen echte Produktionsprobleme: weniger JavaScript, mehr Server-Logik, bessere Performance und Progressive Enhancement ohne Kompromisse.
-
17.09.2025
Ein Container, der in einer Endlosschleife startet, kurz läuft und dann wieder abstürzt, ist eines der frustrierendsten Alltagsprobleme im Docker-Betrieb, weil die Logs oft schneller verschwinden, als man sie lesen kann. Mit einem systematischen Vorgehen lässt sich die Ursache meist innerhalb weniger Minuten eingrenzen, statt wild an Konfigurationswerten herumzuraten.
-
17.09.2025
Das Page-Object-Pattern soll Tests von Selektoren und DOM-Struktur entkoppeln, wird in der Praxis aber oft zu Klassen mit versteckter Business-Logik und tiefen Vererbungsketten aufgebläht. Dieser Artikel zeigt, was das Pattern tatsächlich löst, welche Overengineering-Fallen typisch sind, wie ein minimales Page Object aussieht und wann ein Test ganz ohne dieses Pattern auskommt.
-
17.09.2025
Code Coverage klingt nach einem einfachen Konzept, wird aber in großen Magento 2 Projekten schnell zur Bremse: Xdebug verlangsamt die Test-Suite um Faktor 5 bis 10, Reports sind riesig, und ohne Konfiguration misst man das Falsche. PCOV, gezielte Whitelist-Konfiguration und CI-Schwellenwerte machen Coverage zu einem nützlichen Werkzeug statt einem Engpass.