Benim takımım şu anda üzerinde çalıştığı projede, biz ticari bir PHP uygulama modifiye ediyoruz. App kod ile mayınları olduğu bir üst sınıf için kontroller gibi ve benzeri, üst sınıfında bulunmayan bir özelliği ile çalışır:
class A
{
function doSomething()
{
if (property_exists($this, 'some_property'))
{
$this->some_property = $_REQUEST['val'];
}
}
}
class B extends A
{
protected $some_property;
function doSomething()
{
parent::doSomething();
}
}
Biz belli belirsiz kirli bu kodu değiştirmek zorunda hissediyorum; Bu doğru tasarım? Böyle bir şey önlenebilir (açık dışında) yolları nelerdir?