items = $items; $this->degradingStrategyFactory = $degradingStrategyFactory; } public function __get($name) { return property_exists($this, $name) ? $this->{$name} : null; } /** * Handle Updating quality in cleaner way respecting multiple software engineering principles * Such as Solid/Dry etc */ public function updateQuality(): void { foreach ($this->items as $item) { $this->degradingStrategyFactory->getDegradingStrategy($item)->handle(); } } }