по умолчанию в количестве > 1 заставляют клиентский код быть в курсе реализации этого метода?
Тот же \Exception:
public function __construct($message = "", $code = 0, Throwable $previous = null) { }
если я хочу указать предшествующее исключение (третий параметр), но хочу оставить по умолчанию код (второй параметр), то мне приходится вставлять значение 0.
А если представить, что это подверженный изменению со стороны программиста метод, то выходит, что дефолтное значение может измениться в этом методе. Но клиентский код об этом и не узнает - там так и будет стоять бесмыссленный 0.
Есть разные способы избегать этого. Если прямо болит, то их можно придумать легко. Но причём тут реализация - хз.
Обсуждают сегодня