То что куски кода высчитываются только тогда где это нужно? В нужный момент?А как определять в этой идее когда в какой момент просчитывать куски?
Допустим у нас алфавит русских букв. 33 символа. И каждый символ мы получаем попиксельно и кидаем в образ.
И допустим я использовал в коде литеру 'А' и кинул её на экран. Я по идее должен обсчитывать только символ 'А', а другие неиспользованные буквы могу даже не инициализировать?
Ленивый подход имеет смысл для дорогостоящих операций и для операций, выполнение которых не гарантируется. Возможно, что тебе вовсе и не понадобится какой-то ресурс, тогда нет необходимости в его предварительном получении. Либо для того, чтобы ускорить загрузку и распределить её во времени. Ты выполняешь операцию лишь в тот момент, когда понадобится ресурс, затем можешь его кешировать.
“Лень” в программировании - это как в жизни: ничего лишнего. Ты используешь ресурсы только тогда, когда это нужно, и только в том объеме, который требуется. Как ты и сказал, “ленивый” подход делает код более эффективным. В твоем случае с буквами - да, ты можешь инициализировать только “А”, а остальные - по мере необходимости. Проблема в том, что в этом случае, чтобы определить, когда нужно “просыпаться” остальным символам, нужна дополнительная логика, которая в конечном итоге может оказаться сложнее, чем просто их инициализировать сразу. Это и есть суть “ленивого” подхода: он может быть выгодным, но не всегда