Ich habe in letzter Zeit viel dafür plädiert, Geschäftslogik vom Framework (im Speziellen Magento) zu entkoppeln.
Das hat mehrere Vorteile
- Von testgetriebener Entwicklung (TDD) profitieren, ohne einen Haufen Core Klassen mocken zu müssen.
- Mögliche Wiederverwendung in verschiedenen Anwendungen (z.B. auch Magento 1 und Magento 2)
- Separate “bounded contexts” helfen dabei, Teile der Domain isoliert und ohne Ablenkung zu betrachten.
Sogar in chirurgischen Modifikationen, mit denen wir es oft in Magento-Projekten zu tun haben, ist es den Aufwand wert, die eigentliche Logik zu identifizieren und sie von den Magento-Klassen zu extrahieren.
Vollständiger Beitrag auf integer-net.com → (Englisch)