Oi, tudo bem?
Funções declaradas, têm algo chamado elevação (hoisting), o que significa que podem ser usadas antes de serem definidas. Mas, com arrow functions, essa regra não se aplica.
Só que no React, isso não costuma ser um grande problema, já que geralmente definimos nossos componentes antes de usá-los.
As arrow functions são mais concisas e tornam o código mais limpo, especialmente para funções pequenas. Vamos ver um exemplo rápido:
function FilmeDestaque() {
return <h2>Matrix é um clássico!</h2>;
}
const DestaqueCinema = () => {
return <h2>Matrix ainda impressiona!</h2>;
};
Você pode se perguntar e o this
Lorena? Em componentes funcionais do React, raramente precisamos nos preocupar com ele.
Mas a escolha entre usar uma função normal ou arrow no React muitas vezes é uma questão de preferência pessoal ou da equipe. E isso acontece muito na programação, às vezes precisamos nos adequar ao modo que a equipe coda.
No geral, arrow functions são mais populares por sua clareza mesmo.
Espero ter te ajudado a entender. Se tiver mais dúvidas, é só falar.
Um abraço e bons estudos.