Seite 166 - Maxim Mironjuk
-
Maxim Mironjuk
-
September 26, 2025
Das Repository Pattern trennt Domänenlogik von der konkreten Datenzugriffstechnologie, indem eine Sammlung von Domänenobjekten hinter einem einfachen Interface verborgen wird. Wer das Repository Pattern in reinem PHP versteht, kann Geschäftslogik testen, ohne eine echte Datenbank zu berühren, und die zugrunde liegende Speichertechnologie später austauschen, ohne den restlichen Code anzufassen.
-
Maxim Mironjuk
-
September 25, 2025
Wer Postman-Collections manuell pflegt und gleichzeitig eine
OpenAPI-Spezifikation verwaltet, verdoppelt den Aufwand bei jedem API-Change. Mit dem richtigen Import-Workflow, automatischer Synchronisierung und Newman-CLI wird die OpenAPI-Spezifikation zur einzigen Quelle – für Dokumentation, Testing und CI-Integration.
-
Maxim Mironjuk
-
September 25, 2025
Wer TypeScripts Typsystem nur als Annotation für Laufzeitwerte betrachtet, übersieht seine eigentliche Mächtigkeit. Conditional Types entsprechen If/Else, Mapped Types entsprechen ForEach, infer entspricht Pattern Matching, und Rekursion ist das einzige Kontrollflusskonstrukt. Zusammen bilden diese vier Bausteine eine vollständige funktionale Sprache, die zur Compile-Zeit ausgewertet wird und mit der sich sogar kleine Parser bauen lassen.
-
Maxim Mironjuk
-
September 25, 2025
Magento Catalog SQL: catalog_product_entity, EAV-Attributtabellen, Kategoriezuordnung, Lagerbestand mit MSI, konfigurierbare Produkte und ein vollständiger Query für Produkt + Name + Preis + Status + Stock in einer Abfrage.
-
Maxim Mironjuk
-
September 25, 2025
Wer Merge und Rebase austauschbar nutzt, riskiert verlorene Commits, verwirrende Historie und Force-Push-Chaos im Team. Beide Befehle integrieren divergierende Branches, aber auf grundlegend unterschiedliche Weise. Dieser Artikel erklaert die interne Mechanik beider Operationen und liefert einen klaren, praxistauglichen Entscheidungsrahmen für den taeglichen Einsatz.
-
Maxim Mironjuk
-
September 24, 2025
MVCC erlaubt es einer Datenbank, jeder Transaktion eine konsistente Momentaufnahme der Daten zu zeigen, ohne dass Lesevorgänge Schreibvorgänge blockieren oder umgekehrt. Statt Zeilen zu sperren, verwaltet die Datenbank mehrere Versionen jeder Zeile gleichzeitig, PostgreSQL und InnoDB lösen das auf unterschiedliche Weise, mit direkten Folgen für Vacuum, Purge und die Auswahl des Isolation Levels.
-
Maxim Mironjuk
-
September 24, 2025
Ein Async Generator liefert Werte einzeln und bei Bedarf, statt eine komplette Ergebnisliste im Speicher zu halten. Für paginierte APIs, große Exporte und Live-Datenströme ersetzt async function* zusammen mit for await...of fehleranfällige Schleifen-Konstrukte durch lesbaren, komponierbaren Code.
-
Maxim Mironjuk
-
September 23, 2025
Ein Play Console Eintrag ist mehr als ein Titel und ein Icon: Store-Listing, Content-Rating, Data Safety und Testing-Tracks entscheiden gemeinsam darüber, ob eine React Native App überhaupt live gehen kann. Dieser Leitfaden erklärt Schritt für Schritt, wie ein Play Console Eintrag richtig aufgebaut wird und welche Felder in der Praxis am häufigsten für Verzögerungen sorgen.
-
Maxim Mironjuk
-
September 23, 2025
Ein Skript mit & im Hintergrund zu starten macht noch keinen Daemon. Ein echter Daemon löst sich vollständig vom Terminal, verhindert Mehrfachstart über eine PID-Datei, reagiert kontrolliert auf Signale wie SIGTERM und SIGHUP, und schreibt sein Log an eine Stelle, die auch ohne Terminal erreichbar bleibt.
-
Maxim Mironjuk
-
September 23, 2025
useCallback und useMemo sind die am häufigsten falsch eingesetzten Hooks in React. Sie kosten immer etwas – Speicher, Laufzeit für den Vergleich, kognitive Komplexität – und helfen nur in spezifischen, messbaren Situationen. Wer sie überall einsetzt, macht seine Applikation langsamer, nicht schneller.
-