Magento Blog: Anleitungen und Praxiswissen | Seite 321 | mironsoft
Magento Blog
-
07.03.2025
Ein einzelner Aufruf von htmlspecialchars() wird gerne als vollständiger XSS Schutz missverstanden, dabei hängt sicheres Output Encoding immer vom Ausgabekontext ab: HTML-Body, HTML-Attribut, JavaScript-String und URL erfordern jeweils eigene Escaping-Regeln, die bei Verwechslung genau die Lücke offen lassen, die eigentlich geschlossen werden sollte.
-
07.03.2025
Wer JSON-Daten bisher als String in Redis abgelegt hat, kennt das Problem: Jede noch so kleine Änderung an einem einzelnen Feld erfordert, das komplette Dokument zu laden, zu deserialisieren, zu ändern und wieder als Ganzes zurückzuschreiben. RedisJSON löst dieses Problem, indem es JSON-Dokumente als eigenen, nativen Datentyp verwaltet und über JSONPath-Ausdrücke gezielten Zugriff auf einzelne Pfade erlaubt, ohne das gesamte Dokument zu bewegen.
-
06.03.2025
Ein Natural Key wie eine E-Mail-Adresse oder eine Artikelnummer wirkt beim ersten Schema-Entwurf verlockend praktisch: Er ist ohnehin eindeutig, spart scheinbar eine zusätzliche Spalte und macht Fremdschlüssel auf den ersten Blick lesbarer. Das Problem zeigt sich erst später, wenn sich genau dieser fachliche Wert ändern muss, ein Fall, der in praktisch jedem langlebigen System irgendwann eintritt. Dieser Artikel erklärt, warum Natural Keys als Fremdschlüssel-Ziel strukturell fragil sind, wie ein stabiler Surrogate Key diese Fragilität auflöst, und zeigt an einer realistischen Migration, wie teuer die nachträgliche Korrektur wird.
-
06.03.2025
Der Vue 3 Template Compiler analysiert jedes Template zur Build-Zeit und erzeugt Render-Funktionen, die bereits wissen, welche Teile sich zur Laufzeit ändern können. Wer diese Compiler Optimierungen versteht, kann Templates so schreiben, dass sie davon maximal profitieren, statt versehentlich langsame Fallback-Pfade auszulösen.
-
06.03.2025
Exploratives Testen lebt vom spontanen Entdecken unerwarteten Verhaltens, nicht von starren Skripten. Claude ersetzt diesen kreativen Prozess nicht, unterstützt ihn aber als Co-Pilot: beim Schärfen des Testcharters, beim Anwenden von Heuristiken und beim strukturierten Festhalten von Beobachtungen während der Session.
-
05.03.2025
Badges, Tags und Chips wirken einzeln betrachtet wie triviale kleine Bauteile, doch sobald sie in einer größeren Anwendung an zig verschiedenen Stellen auftauchen, entscheidet ein konsistentes System aus Größen, Farbvarianten und klaren Regeln für Interaktivität darüber, ob die Oberfläche aufgeräumt oder chaotisch wirkt. Dieser Artikel zeigt, wie sich ein wiederverwendbares Badge- und Chip-System mit Tailwind CSS aufbauen lässt, das auf Design-Tokens statt auf hartkodierten Farben pro Einzelfall basiert und klar zwischen statischen Badges und interaktiven, entfernbaren Chips unterscheidet.
-
-
05.03.2025
Ein Magento-Projekt mit 40 Drittanbieter-Modulen hat schnell hunderte transitive Abhaengigkeiten. Wer vor einem Composer-Update nicht weiss, welche Pakete sich gegenseitig einschraenken, verliert Stunden mit Trial-and-Error. PhpStorm macht diesen Graphen sichtbar.
-
05.03.2025
Fetch und XHR beim Seitenende zu nutzen ist eine Race-Condition gegen den Browser. Wenn der Tab geschlossen oder die Seite entladen wird, bricht der Browser offene Anfragen ab. navigator.sendBeacon überträgt Daten garantiert, ohne die Navigation zu verzögern – das ist die richtige Lösung für Analytics, Session-Daten und Exit-Tracking.
-
04.03.2025
Wer InnoDB ohne bewusste Tablespace-Strategie betreibt, sammelt über Jahre einen unaufgeräumten system tablespace an, der nicht mehr schrumpft. innodb_file_per_table, OPTIMIZE TABLE und General Tablespaces geben die Kontrolle über Speicherplatz, Backup-Granularität und Wartungsfenster zurück, die im Standardbetrieb sonst verloren geht.