Hallo xm22,
beim Thema separation of concerns im Rahmen von HMVC geht es darum, die Abhängigkeiten eines Moduls innerhalb des Baumes zu abstrahieren. So sollst du nicht allgemeingültige Informationen und das Umfeld des Knotens diesem manuell zur Verfügung stellen müssen.
Fügst du an einer definierten Stelle ein Modul per PHP-Code ein, muss
a) PHP-Code im View erlaubt sein oder
b) ein Modul im Controller an einer definierten Stelle des Templates einfügen lassen (z.B. Platzhalter)
In beiden Fällen hast du aber die Notwendigkeit, das Modul auch in den Baum einzubetten. Du musst ihm Attribute des Baum-Zweiges mitgeben, seinen Vater, seine Nachbarn, ... Das alles ist dann händisch notwenig und eben nicht generisch durch eine umgebende Komponente wie der Page-Controller des APF.
Als Entwickler habe ich den Anspruch, dass ich mich um derartige Themen nicht kümmern muss, das sollte das Framework für mich schon übernehmen.
Sicher kann man nun argumentieren, dass ein Modul ja keine Informationen braucht. Nutz man diese Schnittstelle wirklich als Plugin- und Modul-Schnittstelle (was sehr wohl sinnvoll ist!) steht man vor den Problemen, die wir hier im Forum zu diesem Thema schon oft diskutiert hatten.
beim Thema separation of concerns im Rahmen von HMVC geht es darum, die Abhängigkeiten eines Moduls innerhalb des Baumes zu abstrahieren. So sollst du nicht allgemeingültige Informationen und das Umfeld des Knotens diesem manuell zur Verfügung stellen müssen.
Fügst du an einer definierten Stelle ein Modul per PHP-Code ein, muss
a) PHP-Code im View erlaubt sein oder
b) ein Modul im Controller an einer definierten Stelle des Templates einfügen lassen (z.B. Platzhalter)
In beiden Fällen hast du aber die Notwendigkeit, das Modul auch in den Baum einzubetten. Du musst ihm Attribute des Baum-Zweiges mitgeben, seinen Vater, seine Nachbarn, ... Das alles ist dann händisch notwenig und eben nicht generisch durch eine umgebende Komponente wie der Page-Controller des APF.
Als Entwickler habe ich den Anspruch, dass ich mich um derartige Themen nicht kümmern muss, das sollte das Framework für mich schon übernehmen.
Sicher kann man nun argumentieren, dass ein Modul ja keine Informationen braucht. Nutz man diese Schnittstelle wirklich als Plugin- und Modul-Schnittstelle (was sehr wohl sinnvoll ist!) steht man vor den Problemen, die wir hier im Forum zu diesem Thema schon oft diskutiert hatten.
Kommentar