Получи случайную криптовалюту за регистрацию!

Выборочная оптимизация на примере Composer 2.2 Рекомендую янв | Пых

Выборочная оптимизация на примере Composer 2.2

Рекомендую январский выпуск Пятиминутки PHP, в котором Пётр разобрался, как разработчики ускорили Composer, и поставил под сомнение их результат.

Однако в этом посте я хочу поговорить не про результат, а про подход. Он называется выборочной оптимизацией: подпрограмму улучшают не целиком, а только для конкретных случаев. Попробую обобщить и формализовать такой метод:

1. Исследуем очередное узкое горлышко в программе.
2. Ищем предпосылку, при которой можно можно провести оптимизацию подпрограммы.
3. Выдвигаем гипотезу о том, что при использовании программы предпосылка выполняется достаточно часто.
4. В случае подтверждения гипотезы, проводим оптимизацию для этой предпосылки.

Здесь важен баланс между стоимостью оптимизации (затраты на внедрение, прирост сложности кода) и профитом от неё (изменение целевых метрик, доля улучшенных сценариев). Иными словами, игра должна стоить свеч.

https://5minphp.ru/episode95/