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. Mit einer ConstructorInjection hat man das Problem nicht.
Ich sehe Dein Hauptproblem im richtigen Umgang mit komplexen Datenstrukturen. Da gibts nur Eines: Üben. Also nicht den Hass ausüben sondern den Umgang üben. Das muss sozusagen in Fleisch und Blut übergehen wie Kuppeln, Schalten, Gas geben. Das sind Fertigkeiten die muss man sich selbst aneignen.
Viel Erfolg!