Я знаю преимущества цепочки в PHP, но, допустим, у нас есть следующая ситуация
$Mail = new MailClass("mail")
->SetFrom("X")
->SetTo("X")
->SetSubject("X")
->AddRecipient("X")
->AddRecipient("X")
->AddRecipient("X")
->AddRecipient("X")
->AddRecipient("X")
->AddRecipient("X")
->Send();
Есть ли проблемы с возвратом и повторным использованием объект снова и снова, такие проблемы, как скорость или несоблюдение передовых практик
Также рекомендуется прочитать это, если вы новичок в Fluent-Interface: Мартин Фаулер о Fluent-интерфейсах
Я полностью понимаю, что не требует программирования таким образом, и с ним можно работать так:
$Mail = new MailClass("mail");
$Mail->AddRecipien(
array(/*.....*/)
);
$Mail->SetFrom("X");
$Mail->SetTo("X");
$Mail->SetSubject("X");
$Mail->Send();
но, допустим, у меня есть объект примерно так:
$Order = new Order()
->With(22,'TAL')
->With(38,'HPK')->Skippable()
->With(2,'LGV')
->Priority();
Обратите внимание на -> With (38, 'HPK') -> Skippable ()
, это прекрасный пример Pro для этого типа программирования