[Moscow.pm] new Class::($arg)

Ruslan Zakirov ruslan.zakirov на gmail.com
Вт Авг 25 02:53:40 PDT 2009


Привет, Андрей,

Не знаю доводов, но пишу так:

$x = new Class::WithOuthArguments;
$x = Class::WithArguments->new(...);

По поводу эвристик они правы, но не стоит заморачиваться.

Есть еще другой довод, что типа такой код рефакторить не удобно.

$x = new Class::X;

сложнее превратить в

$x = Class::X->new->xxx->yyy;

2009/8/25 Andrew Shitov <andy на shitov.ru>:
> Превед.
>
> Случился клин и все стали возбухать против конструкции "new Class",
> вот например:
> http://github.com/markstos/CGI.pm/commit/a36e451716f8cee8ac02376617bb98a33d5ac9c0
>
> Доводы, которые обычно приводят - типа компилятор должен применять
> кучу эвристик, чтобы понять, что new - это на самом деле метод класса
> Class. Приводят какие-то мутные примеры, когда эвристика не
> срабатывает: примеры, где A использует B, а B - A.
>
> Кто-нибудь знает другие аргументы, почему все-таки плох new XXX? На то
> ведь он и компилятор, чтобы я мог писать timtowtdi.
>
> --
> Andrew Shitov
> ______________________________________________________________________
> andy на shitov.ru | http://shitov.ru
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

-- 
Best regards, Ruslan.


Подробная информация о списке рассылки Moscow-pm