En d'autres termes
Définition
Cet adjectif s'applique à un style de conception de classes
en programmation par objets, dans lequel les méthodes
d'affectation (setter) renvoient l'instance sur
laquelle elles ont opéré.
Pour les langages qui, à la différence de Pascal,
ne disposent pas de la construction with
, cela
permet d'en imiter la présentation. Ainsi, en PHP, on pourra
avoir une programmation du type:
client($client_id)
->article(1, 'CA Brightstor ARCserve Backup 11.5 pour Linux')
->article(3, 'CA BAB agent client Win32')
->article(1, 'CA OLP Solutions kit')
->livraison('express');
?>
...alors que dans un style plus traditionnel, le code
aurait eu cette apparence:
setClient($client_id);
$cmd->addArticle(1, 'CA Brightstor ARCserve Backup 11.5 pour Linux');
$cmd->addArticle(3, 'CA BAB agent client Win32');
$cmd->addArticle(1, 'CA OLP Solutions kit');
$cmd->livraison('express');
?>
A propos du terme "fluent"
Selon Martin Fowler,
le terme aurait été créé par Eric Evans et lui courant 2005,
mais le procédé lui-même semble avoir été popularisé dans le
framework Hibernate pour Java sous le
nom de "chaînage de méthodes" (method chaining) et dériver
de pratiques courantes en Smalltalk.
L'adjectif "fluent" est d'un usage rare en français, mais
correspond dans ce cas précis bien au sens de l'anglais
"fluent", ce qui n'est pas toujours le cas.
Epoque du terme