Es curioso cuando averiguas el nombre con el que se designa a algo que ya conocías. Eso me ha pasado hoy, cuando he visto lo que en ingeniería del software se conoce como una interfaz fluida.

La idea es esta: Que todos los métodos setters devulvan el objeto actual de forma que se puedan anidar llamadas y el código sea más legible.

Como ejemplo, copio y pego de la Wikipedia:

	// Interfaz fluida
	$myCar = new car();
	$myCar->setSpeed(100)->setColor('blue')->setDoors(5);

	// Ejemplo sin interfaz fluida
	$myCar2 = new car();
	$myCar2->setSpeed(100);
	$myCar2->setColor('blue');
	$myCar2->setDoors(5);

Aunque a mí, personalmente como más me gusta escribirlo es así:

	$myCar = new car();
	$myCar
		->setSpeed(100)
		->setColor('blue')
		->setDoors(5);

Y todo poniendo un simple “return $this;” al final de cada método setter :)