Primeiramente, parabéns pelo tópico. Sempre ouvia falar sobre injeção de dependência mas nunca tinha parado pra ler. O exemplo é bem didático também.
Mas fiquei com uma dúvida, qual a diferença, neste exemplo, do fetch isolado na classe? Se houver problema na requisição, afetará o hook e o app de qualquer maneira. Num primeiro momento me parece até overengineering. Mas pergunto aqui justamente pela ignorância no assunto.