Fala Ian, tudo beleza?
De fato, existe uma discussão grande na comunidade sobre esse tema! As exceções unchecked parecem, na maioria das vezes, o melhor caminho (inclusive linguagem derivadas do Java, como o Kotlin, nem tem exceções checked!).
As exceções checked surgiram no Java visando o compartilhamento e distribuição de código. Com elas, temos certeza que algum método têm comportamentos que podem nos gerar problemas, e é uma maneira de forçar o tratamento desse erro. Claro que não da maneira mais elegante, mas é mais uma maneira do Java deixar explícito e nos dizer: Esse método pode te gerar uma exceção, é interessante que você faça o tratamento aqui para não ter problemas rodando a sua aplicação.
É util para nós que programamos em java conhecer as exceções checked porque inevitavelmente vamos nos deparar com elas em algum momento, e precisamos saber o que são e como tratá-las para que elas não fiquem estourando erros na nossa aplicação!
Em caso de dúvidas, estou à disposição.
Um grande abraço e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!