Я не уверен, что это лучший пример, но здесь идет. Допустим, я хочу нарисовать объект на холсте в приложении для Android. Мне нужно немного посчитать и вызвать метод для возврата размера экрана, чтобы выяснить, где его нарисовать, поскольку мое приложение должно поддерживать несколько экранов. Мне действительно нужно сделать эту процедуру только один раз, поскольку каждый раз, когда я хочу, чтобы объект был нарисован, он рисуется в одном и том же месте. Если я делаю процедуру только один раз, мне нужно хранить возвращаемые значения в памяти, чтобы я мог обратиться к ним позже.
В качестве альтернативы, я мог бы вызывать процедуру для получения этих значений каждый раз, когда я хочу нарисовать объект, поэтому мне не нужно хранить какие-либо значения в памяти в течение всего времени существования операции.
Теперь я знаю, что не все случаи будут одинаковыми, потому что я мог бы написать причудливый алгоритм на 100 000 строк, который только что возвратил бы целочисленное значение, или перейти к противоположной крайности, но я надеюсь, что есть общий обмен знаниями, который как правило, считается приемлемым.
Итак, каков правильный подход? Вы можете уточнить?
Спасибо, ребята!