[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Rafael Belchior da Silva
Criador Rafael Belchior da Silva 29/08/2022

Fiquei um pouco confuso, confesso que essa aula foi um pouco mais avançada e nunca tinha visto isso. Voce esta retornando uma interface no proprio metodo? no caso voce esta dizendo que o metodo getByStatus vai retornar uma intercace que é o PaginationInterface Isso pode? Doideira. Mas foi bacana o aprendizado, logo agora nao estamos amarrados totalmente ao eloquent, certo?

Manager Carlos Ferreira 29/08/2022

Olá, Rafael!
Tudo bem?

Te explico amigo.

Olha esse código:
function nomeMetodo(): NomeClasse {
    return new NomeClasse;
}

Nesse exemplo acima acoplamos o retorno da função, onde fixamos que o retorno precisa ser um objeto da classe NomeClasse.

Se fizermos assim:
function nomeMetodo(): AlgumaInterface {
    return new QualquerClasseQueImplementaAInterfaceAlgumaInterface;
}

Neste novo exemplo, agora pode trabalhar com qualquer classe que implemente a interface. Se um dia precisa mudar essa classe "QualquerClasseQueImplementaAInterfaceAlgumaInterface" por "OutraClasseQueImplementaAInterfaceAlgumaInterface", isso não vai quebrar os outros locais do nosso código que usam a função nomeMetodo()

Se não fui claro, te dou outros exemplos.

Carlos Ferreira
Criador Rafael Belchior da Silva 29/08/2022

Entendi valeu!!!

Rafael Belchior da Silva
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!