
Hoje, no PhpStorm, criei uma variável privada e notei que o IDE me oferece dois tipos de setters: o regular e o fluente.
O termo "setter fluente" que eu não conhecia antes, então criei as duas opções.
class Foo { private $var;
Sim, então o
setter fluente é o setter que retorna o próprio objeto .
Que coisa estúpida. Quem pode precisar de um design de vista
$object = $object->setVar(1);
Isto é à primeira vista.
Um pouco mais tarde, adivinhei. Isso é chamado de encadeamento jQuery. Graças ao objeto retornado, podemos aplicar imediatamente o próximo levantador.
$('#elementId').val(13).css('font-size', '20px').appendTo(element2);
Os setters fluentes são projetados para tornar o código mais claro e limpo.
Sim, em Javascript, isso é perceptível. Em Java e PHP também. Além disso, já existem funções ativadoras usadas ativamente; por que não fazê-las na versão fluente?
$car->setColor('#f00')->setWeight('1200')->setPower(55000); $car ->setColor('#f00') ->setWeight('1200') ->setPower(55000);
no Python, é claro, você pode escrever funções de configuração, mas os benefícios não são óbvios. Será mais conveniente para mim usar pessoalmente o configurador Python usual, que não se parece com uma função, mas como um operador de atribuição. Fazer setters da forma set_var () no Python, na minha opinião, contradiz as idéias de simplicidade do Python.
Mais tarde, encontrei
um artigo sobre a Interface Fluente, onde me deparei
com um exemplo de python mais
atraente .
O minuto da auto-educação acabou.