bigton
@bigton
Web-программист

Как правильно вызывать статический метод?

Всем привет!

Вопрос: статический вызов VS динамический вызов.

Ясно, что когда есть класс Cell и мне нужно создать несколько экземпляров класса, я делаю $cell_i= new Cell() и работаю $cell_i->paint(). А как быть, если класс это некоторое объединение методов и нет необходимости создавать много экземпляров класса, а лишь в начале проекта сделать $MyFunc = new MyFunc()? И вроде всё удобно, пока не появляется необходимость использовать методы одного класса, в методах другого. В таком случае одна строка MyFunc::sum() гораздо удобней, чем две строки $MyFunc = new MyFunc() + $MyFunc->sum().

1. Как правильно поступать в случае описанном выше?
2. Как в том же Laravel по коду используется статический вызов Crypt::encrypt(), но внутри метод устроен как динамический ($this->...)?

UPD. Насколько я понял, в Laravel используется паттерн singleton и раз он там используется, значит это нормальная практика?

Спасибо!
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы