Désignation chaînée

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Fluent Interface / Interface fluide

En génie logiciel, une désignation chaînée ou chaînage de méthodes consiste à agir en une seule instruction sur plusieurs méthodes du même objet, dans un but de plus grande lisibilité.

L'idée principale est qu'au lieu de qualifier chaque méthode par le nom de l'objet correspondant, ce qui conduisait à une lourdeur de style, ce nom d'objet reste par défaut actif dans toute l'instruction en cours. L'économie de verbosité est du même ordre (bien que sur des principes différents) que celle que permettait l'expression with en langage Pascal et en Visual Basic

Le contexte est :

  • défini par la valeur de retour de la méthode appelée
  • transmis à la méthode suivante
  • terminé par le retour d'un contexte vide.

Le code est ainsi à la fois plus concis et plus clair.

Exemples[modifier | modifier le code]

C++[modifier | modifier le code]

Le mécanisme des entrées-sortie caractères de C++ par << et >> permet le chaînage de méthodes :

std::cout << "Hello world!" << std::endl

PHP[modifier | modifier le code]

Voici un exemple en PHP :

<?php
	class car {
		private $speed;
		private $color;
		private $doors;
 
		public function setSpeed($speed){
			$this->speed = $speed;
			return $this;
		}
 
		public function setColor($color) {
			$this->color = $color;
			return $this;
		}
 
		public function setDoors($doors) {
			$this->doors = $doors;
			return $this;
		}
	}
 
	// Exemple avec chaînage de méthodes 
 
	$myCar = new car();
	$myCar->setSpeed(100)->setColor('blue')->setDoors(5);
 
	// Exemple sans chaînage de méthodes
 
	$myCar2 = new car();
	$myCar2->setSpeed(100);
	$myCar2->setColor('blue');
	$myCar2->setDoors(5);
?>

Liens externes[modifier | modifier le code]