Re: Задача на 5
Корочше задача має зайву складність. Клас Dealer можна спростити до вигляду
class Dealer {
public $name = null;
public function __construct($name) {
$this->name = $name;
}
public function getName() {
return MemoryCache::load($this->name, function () {
return strtolower($this->name); //point 1
});
}
public function getUName() {
return MemoryCache::load($this->name, function () {
return strtoupper($this->name); //point 2
});
}
}
$dealer = new Dealer('funivan');
echo $dealer->getName() . "\n";
echo $dealer->getName() . "\n";
echo $dealer->getName() . "\n";
echo $dealer->getUName() . "\n";
echo $dealer->getUName() . "\n";
echo $dealer->getUName() . "\n";
А знаючи ключ кешу, елементарно видати кеш.