Seite 18 - Monthly Archives: January 2025
-
Maxim Mironjuk
-
Januar 11, 2025
API Platform generiert GraphQL-Schemata automatisch aus PHP-Entities – das klingt nach der einfachsten Lösung. In der Praxis zeigen sich aber schnell Grenzen: komplexe Mutations, domänenspezifische Validierung, Performance-Probleme durch N+1 und fehlende Kontrolle über das generierte Schema. Dieser Artikel zeigt, wann API Platform GraphQL ausreicht und wann es erweitert oder ersetzt werden muss.
-
Maxim Mironjuk
-
Januar 11, 2025
Jahrelang haben PHP-Entwickler für jede validierte oder berechnete Eigenschaft ein Paar aus getX() und setX() geschrieben. Property Hooks verlagern diese Logik direkt in die Property-Deklaration selbst - mit get- und set-Hooks, die sich wie normale Felder verwenden lassen, aber wie Methoden Kontrolle über Lesen und Schreiben behalten.
-
Maxim Mironjuk
-
Januar 11, 2025
Ohne ElementInternals konnte ein selbst gebautes Custom Element nie wirklich an einem form-Element teilnehmen: kein automatischer Eintrag in FormData, keine native Validierung, kein :invalid-Styling. Die ElementInternals API schliesst diese Luecke ueber attachInternals(), setFormValue() und setValidity() und macht aus einem gewoehnlichen Custom Element ein vollwertiges Formular-Steuerelement.
-
Maxim Mironjuk
-
Januar 10, 2025
JavaScript ist von Natur aus single-threaded – aber mit SharedArrayBuffer und Atomics gibt es echten Shared Memory zwischen Threads. Damit lassen sich Szenarien lösen, die mit postMessage nicht effizient zu realisieren waren: schnelle Bildverarbeitung, Parser, WASM-Integration und Lock-freie Datenstrukturen.
-
Maxim Mironjuk
-
Januar 09, 2025
Claude kennt nur, was im Kontextfenster steht, außer man verbindet es mit externen Systemen. Das Model Context Protocol macht Ticket-Tracker, Dokumentations-Wikis und Deployment-Pipelines für Claude direkt abfragbar. Dieser Artikel zeigt praktische Integrationsmuster, bewertet echten Zeitgewinn gegen zusätzliche Komplexität und benennt konkrete Sicherheitsrisiken beim Zugriff auf produktive Systeme.
-
Maxim Mironjuk
-
Januar 09, 2025
Deprecation Handling ist kein Punkt auf der Upgrade-Checkliste, sondern ein laufender Prozess: PHPStan-Regeln, Composer-Audits und CI-Gates decken deprecated Code auf, lange bevor Magento ihn in einer künftigen Major-Version entfernt und die Migration erzwingt.
-
Maxim Mironjuk
-
Januar 09, 2025
Mit Tailwind v4 verschwindet die zentrale tailwind.config.js zugunsten der @theme-Direktive direkt im CSS. Für reine Utility-Klassen ändert sich im Alpine-Template wenig, doch überall dort, wo Alpine-Komponenten bisher Konfigurationswerte aus JavaScript gelesen haben, etwa Breakpoints oder Farbwerte für dynamische Berechnungen, verschiebt sich die Quelle der Wahrheit auf CSS-Custom-Properties. Wer diesen Unterschied versteht, spart sich beim Umstieg von v3 auf v4 unnötige Fehlersuche.
-
Maxim Mironjuk
-
Januar 09, 2025
Der Store-Switcher und der Währungsumschalter im Header sind keine gewöhnlichen Dropdowns: Beide müssen einen echten Formular-Submit an einen Magento-Controller auslösen, damit Cookie und Session serverseitig aktualisiert werden und den Seiten-Reload überstehen. Dieser Artikel zeigt, wie man beide Komponenten als zugängliches Alpine.js-Dropdown im Hyvä-Header baut, inklusive ARIA-Listbox-Pattern, Tastatursteuerung, Gruppierung nach Website bei vielen Store Views und CSP-konformer Inline-Registrierung, ganz ohne zusätzliches JavaScript-Bundle.
-
Maxim Mironjuk
-
Januar 09, 2025
gRPC verspricht mit Protocol Buffers und HTTP/2 spürbar schnellere und typsichere Kommunikation zwischen internen Services. Der Umstieg lohnt sich aber nicht automatisch überall: Wer REST innerhalb des Unternehmens durch gRPC ersetzt, tauscht Debugging-Komfort und Tooling-Reife gegen Performance ein, und das ist nicht immer der richtige Handel.
-
Maxim Mironjuk
-
Januar 09, 2025
Wer in Magento 2 Software-Lizenzen, E-Books oder Whitepaper über Downloadable-Produkte verkauft, muss weit mehr absichern als nur den Checkout: link_url_key-Hashing, Download-Limits, Order-Status-Gating und eine Auslieferung, die niemals den rohen Dateipfad preisgibt, entscheiden darüber, ob digitale Güter geschützt oder frei kopierbar im Netz landen.
-