Oi, Geraldo, tudo bem?
Fico feliz em saber que você está gostando do conteúdo e da didática do curso.
A respeito da sua dúvida, a escolha entre usar CSS ou JavaScript para criar interações depende muito do contexto do projeto e das suas necessidades.
Neste caso específico, a criação de um menu que aparece e some com o clique, usando apenas CSS, é uma solução bastante eficiente. Isso porque o CSS é mais leve e rápido para o navegador processar do que o JavaScript e como teríamos apenas efeitos simples, é uma forma rápida de resolver essa funcionalidade. No entanto, o JavaScript oferece muito mais possibilidades de interação e controle sobre o comportamento do menu.
Em termos de boas práticas, ambas as abordagens são válidas e têm seus prós e contras. A escolha entre uma ou outra deve levar em conta as necessidades específicas do seu projeto, a experiência do usuário que você deseja proporcionar, e também a sua preferência pessoal como desenvolvedor.
Espero ter ajudado. Caso tenha dúvidas, conte com o fórum. Abraços!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!