Interfaces fluiadas en Zend Framework
Zend Framework utiliza un estilo especial para la ejecución de varios métodos de forma encadenada esto realmente se conoce como "Fluent Interfaces" o interfaces fluidas, su nombre esta asociado a Martin Fowler y fundamentalmente se pretende hacer más legible el código.
Cada método setter debe tener return $this de esta forma devolverá una referencia del objeto del cual fue llamado.
Ejemplo
http://www.techchorus.net/making-code-more-readable-using-fluent-interface
class Customer{
protected $_name;
protected $_street;
protected $_city;
protected $_country;
public function setName($name)
{
$this->_name = $name;
return $this;
}
public function setStreetAddress($street)
{
$this->_street = $street;
return $this;
}
public function setCity($city)
{
$this->_city = $city;
return $this;
}
public function setCountry($country)
{
$this->_country = $country;
return $this;
}
public function save()
{
// Save the information to a database
echo "Customer information saved";
}
}?>
Se ejecutaría de la siguiente forma
$customer = new Customer;
$customer->setName('James Bond')
->setStreetAddress('Abc street')
->setCity('London')
->setCountry('England')
->save();?>
No hay comentarios:
Publicar un comentario
Gracias por sus comentarios!