Neben bei: Ich hasse Array's flut. Meiner Erfahrung nach sind Array's sehr unspezifisch und ich mag sie garnicht! Man muss wissen, welche struktur das Array hat, welchen Datentyp ein Feld hat, obs Key-Value-Paare sind, usw.
Objekte sind Arrays! Und natürlich kommt es auf eine zweckmäßige Strukturierung an, das ist da A und O der Objektorientierten Programmierung! Und diese Objekte sind nicht nur Schlüssel-Werte-Paare sondern können sehr umfangreich sein.
Mit einer ConstructorInjection hat man das Problem nicht.
Wie bitte? Das ist doch der Sinn und Zweck einer Injektion, Instanzen fremder Klassen als Eigenschaften der eigenen Instanzen zu transportieren. Objekte und Methoden sind das was den wahlfreien Zugriff zum Hauptspeicher vermittelt.
Von daher kann es auch nicht das Ziel von OOP sein, möglichst viele Objekte (Arrays) zu haben sondern möglichst Wenige! Und wie schonmal gesagt: Ein Objekt referenziert Daten, und andere Objekte. Damit hat jede Methode auch Zugriff auf die Daten. Datentypen sind völlig nebensächlich, bei Webanwendungen hast Du es eh nur mit Strings zu tun.
MFG