Компоненты высшего порядка

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

forwardRef - с помощью него создается компонент, и он нужен для того, чтобы прокидывать ref к пользовательскому компоненту.

React.memo - это компонент высшего порядка.

Если компонент всегда рендерит одно и тоже при неизменяющихся пропсах, мы можем обернуть его в вызов React.memo для повышения производительности в некоторых случаях, мемоизируя тем самым результат. Это значит что React будет использовать результат последнего рендеринга, избегая повторного рендеринга.