Parabéns pelo post. Legal você explicar esses conceitos.

Recentemente fiz uma calculadora usando React também e tive que pensar nessas questões. No meu caso, usei o Redux para gerenciar o estado e cuidar da lógica da calculadora.

Link do repositório: https://github.com/Vsspaulasouza/calculadora-react