Hallo MB,
_doSomething ist im TraitHelper enthalten und wird von AbstractInstance imlementiert. Insofern keine einwände finde ich 😀.
Hä? Das ist zumindest im gezeigten Code des Eingangspostings nicht so. Da wird _doSomething von Traithelper implementiert, und nutzt $_storage von AbstractInstance. Wären die beiden beisammen gewesen, hätte ich das ja nicht kritisiert.
abstract private function _addStorage( InterfaceAbstract $params ) void;
Willst Du damit jetzt den Zugriff auf private $_storage von AbstractInstance kapseln? Das ist dann sinnvoll, wenn AbstractInstance eine Menge Dinge mit $_storage anstellen muss, unabhängig vom Trait.
Da Du nur symbolischen Code gepostet hast, kann ich nicht einschätzen was für deinen Fall am Besten ist. Ist die Idee erwägenswert, $_storage als Property des Trait zu deklarieren und das Management des $_storage komplett vom Trait erledigen zu lassen?
Rolf
sumpsi - posui - obstruxi