Вы и @Galy4a правы. Фраза про пересоздание функций не корректна, её стоило бы сформулировать как "передает всегда одну и ту же ссылку на функцию, если [deps] не менялся." В примере useCallback(()=>{}, []) смысла никакого нет, это подсвечено в блоке - Обращайте внимание, когда useMemo и useCallback используются для простых вычислений.
Это верное наблюдение, но важно различать создание функции и сохранение одной и той же ссылки. useCallback и нужен именно для последнего — чтобы ссылка оставалась стабильной, пока не изменятся зависимости.
Согласен, что API ещё далеко от идеала. Но думаю первые шаги в этом направлении сделаны, как минимум уже отделили работу с медиа файлами, от не медийных.
Да,это гиганская проблема которая многих заставляет выбирать между удобством дебага в флиппере и новой либой. Отличная идея для следующей статьи, спасибо. У меня были соображения о том как это можно починить, поэтому я соберу мысли в кучу и попробую рассказать об этом.
Отличная статья)
Спасибо что рассказали, записал себе этот пункт в список оптимизации
Вы и @Galy4a правы.
Фраза про пересоздание функций не корректна, её стоило бы сформулировать как
"передает всегда одну и ту же ссылку на функцию, если [deps] не менялся."
В примере
useCallback(()=>{}, [])
смысла никакого нет, это подсвечено в блоке - Обращайте внимание, когда useMemo и useCallback используются для простых вычислений.Спасибо за вашу внимательность)
Уже отправил статью МикроМягким :)
Да, всё так, но к сожалению большие проекты не имеют возможности перейти на новую архитектуру. Из-за отключают JSI при переходе на 0.73 и выше.
Поэтому решил оставить пункт про мост
Это верное наблюдение, но важно различать создание функции и сохранение одной и той же ссылки.
useCallback
и нужен именно для последнего — чтобы ссылка оставалась стабильной, пока не изменятся зависимости.Спасибо за то что прочитали)
Вот он, внимательный читатель)
Спасибо, поправлю)
Согласен, что API ещё далеко от идеала. Но думаю первые шаги в этом направлении сделаны, как минимум уже отделили работу с медиа файлами, от не медийных.
Ждем дальнейший улучшений)
Да,это гиганская проблема которая многих заставляет выбирать между удобством дебага в флиппере и новой либой. Отличная идея для следующей статьи, спасибо. У меня были соображения о том как это можно починить, поэтому я соберу мысли в кучу и попробую рассказать об этом.
Да, RN использует по умолчанию cocoapods для iOS зависимостей