@dev400

Влияет ли на что либо количество параметров в конструкторе?

вот такой получился конструктор
public function __construct($template = null, Array $data = null,  Array $widgets = null)
	{
		if ( !empty($template) ) {

			$this->template = $template;

		}

		if ( !empty($data) ) {

			$this->data = $data;

		}

		if ( !empty($widgets) ) {

			$this->widgets = $widgets;

		}
	}


Это вполне нормально, или криво?
  • Вопрос задан
  • 517 просмотров
Решения вопроса 2
Keanor
@Keanor
Ведущий разработчик
нормально. только
1) если аргумент array то пусть она по дефолту будет пустым массивом а не null
2) проверки на !empty в вашем случае бесполезны, проще сразу $this->template = $template, или через сеттеры
Ответ написан
@MartinX
Нормально, каких-либо ограничений нет. Дело в удобстве и универсальности, но это решает программист. Зачастую конструкторы и прочие методы могут принимать куда более, чем три аргумента. И ничего плохого в этом нет. Даже с помощью func_get_args() можно очень гибко организовать прием аргументов, если случай сложный.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы