Тёмный

Como e por que eu deveria utilizar interfaces, afinal?  

HunCoding
Подписаться 4,4 тыс.
Просмотров 1,4 тыс.
50% 1

Trouxe um assunto que devemos ter na ponta da língua que é a respeito de interfaces. Como devemos afinal utiliza-las, e porquê? As vezes apenas implementamos ela para seguir uma arquitetura mas não entendemos no fundo o que realmente está sendo feito.
Chapters:
00:00 Introdução
00:25 Porque interfaces?
04:10 O que difere em Go
05:25 Como utilizar as interfaces
Links importantes:
- Playlist de arquitetura de codigo
www.youtube.com/watch?v=egJR-...
- Generics/interfaces em Go
www.youtube.com/watch?v=nD_6L...
www.youtube.com/watch?v=XcDnQ...
- Alguns fundamentos da linguagem
www.youtube.com/watch?v=5lg33...
Todo o codigo está sendo salvo no GitHub do canal, assim, se você quiser replicar no seu PC, só acessar lá para pegar o codigo!
github.com/HunCoding
Qualquer dúvida, pode mandar nos comentários que a gente conversa e tenta sanar essa dúvida!
Valeeu!

Опубликовано:

 

26 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 26   
@nicolassales2853
@nicolassales2853 2 года назад
Quando você aprende a usar interfaces tanto em Go como em outras linguagens, até sua própria visão de como construir/escrever código muda. Estou em um processo de estudar interfaces com Clean Architecture em Go e com isso estou percebendo o poder das Interfaces no desacoplamento e nos testes como mostrado no vídeo. Ademais, parabéns pelos vídeos de qualidade, a série de SOLID, por exemplo, caiu como uma luva no entendimento dos princípios que são obrigatórios para o estudo da arquitetura limpa.
@huncoding
@huncoding 2 года назад
Cara, realmente, quando se entende interface muita regra de arquitetura começa a fazer sentido e você muda até a forma na qual você escreve códigos, pois tudo do jeito antigo começa a ficar bagunçado se nao tiver interfaces kkkkkkk é bem legal (alias, so comecei a entender de verdade solid e outras arquituras depois q realmente entendi pra q servem as interfaces, e que bom que ajudou voce tambem, fico feliz demais por isso!)
@ilvanmanrk
@ilvanmanrk 2 года назад
Vídeo maravilhoso, super bem explicado e detalhado! Você é o cara, adorando o canal!!!! Parabéns ^^
@huncoding
@huncoding 2 года назад
Vc não sabe como fico feliz lendo isso, muito obrigado mesmo pelo comentário! Fico super feliz sabendo que consegui ajudar.
@ilvanmanrk
@ilvanmanrk 2 года назад
@@huncoding Tamo junto! Muito sucesso pra ti .☺ Já estou acompanhando as novidades do canal haha
@NiltonOS
@NiltonOS 2 года назад
Estou esperando aquele curso de Fiber, uma ideia que eu penso, vou compartilhar ... pegar alguma aplicação PHP e reescrever usando Fiber e GORM, algum projeto antigo, e usar como Interface Svelte ou VueJS ou usar um template igual ao AdminLTE 3, usando session, JWT e o Template Jet, apenas uma ideia
@huncoding
@huncoding 2 года назад
Cara o unico problema é que eu nunca, nunca mesmo mexi com PHP kkkkkk eu não sei nada sobre. Daria pra eu fazer a mesma coisa com Java/Spring, com um OAuth (ou JWT mesmo) e alguma coisa no front, geralmente gosto de usar React. Resumindo daria pra fazer a mesma coisa porem com tecnologias diferentes, nas quais eu conseguiria puxar pra cá
@NiltonOS
@NiltonOS 2 года назад
@@huncoding Tudo bem, é só um ponto, eu disse PHP porque existem muitos projetos opensource em PHP que daria para refatorar entende, algo que as pessoas vão usar sabe.
@NiltonOS
@NiltonOS 2 года назад
Bacana, ainda vai demorar um tempo para entender, afff, mas eu vou entender essa bagaça
@huncoding
@huncoding 2 года назад
Qual parte é complicada pra você? Eu tento explicar por aqui se quiser!
@NiltonOS
@NiltonOS 2 года назад
@@huncoding Relexa , você explicou muito bem, meu cérebro que tá demorando para organizar a informação, você disse tudo com qualidade
@ThiagoHenrique-fs1ns
@ThiagoHenrique-fs1ns 2 года назад
muito bom mano!!
@huncoding
@huncoding 2 года назад
Valeu Thiago!!!! Muito obrigado!
@miguelmarcio8127
@miguelmarcio8127 Год назад
Muito bom
@huncoding
@huncoding Год назад
Obrigadaão Miguel!
@arozendojr
@arozendojr 2 года назад
DIzem que interface ajudam a fazer teste, poderia ser conteúdo para outros vídeos
@huncoding
@huncoding 2 года назад
Sim, ajudam até demais, da pra mockar tudo e testar até biblioteca externas se precisar. Vou trazer com certeza videos sobre testes aqui no canal!
@arozendojr
@arozendojr 2 года назад
@@huncoding Show
@danieldias2693
@danieldias2693 2 месяца назад
pode usar o vscode sempre kkkk, pior q depois do VsCode tu foi para o GoLand, até consegui uma licença do GoLand, mas no trabalho uso o VsCode e usar duas IDEs estava me confundindo.
@maydersonmello
@maydersonmello Год назад
Eu venho do Nodejs/TypeScript e Elixir, e estou aprendendo Golang, achei essa parte de Interface bem estranha rsrs, pelo fato dela ser implícita, por exemplo, vamos supor que eu tenha uma base de código grande, como eu iria saber que algo esta implementando X Interface só de olhar sabe? isso pode ser confuso, você sabe me dizer se existe alguma possibilidade deles deixarem mesmo que seja de forma opcional, o uso de forma explícita dessas Interfaces? eu vi que você deu um exemplo mostrando que se uma variável tem o tipo daquela interface, e ao fazer uma atribuição se tiver aqueles métodos implementados então vai deixar prosseguir, mas rsrs se tivesse como ser explícito seria bacana.
@huncoding
@huncoding Год назад
Explícito você diz de deixar claro que uma variável implementa aquela interface? Você poderia implementar uma variável do tipo da interface e jogar o valor da implementação nela, tipo: var interfaceTeste1 InterfaceTeste = NewInterfaceTeste() Não sei se é isso que vc quis dizer
@maydersonmello
@maydersonmello Год назад
@@huncoding essa pegada ai seria mais ou menos o que você mostrou no vídeo, mas me refiro algo desse tipo por exemplo: Disso: type User struct {...} Para isso: type User struct implements MyInterface {...} obs: eu sei que a keyword implements não existe, é só para ter mais ou menos uma noção de saber que uma estrutura de dados está implementando uma interface, com isso só de olhar já fica mais claro, é só uma opinião sabe, eu sei que o Go tem sua forma diferenciada assim como outras linguagens, a verdade é que quando acostumamos a trabalhar de um jeito, meio que criamos uma barreira e questionamos o porque não é assim aqui também rsrs. Mas enfim, você foi bem objetivo no seu vídeo, foi uma excelente abordagem com exemplos obrigado!
@huncoding
@huncoding Год назад
@@maydersonmello e eu super entendo cara kkkkkkkk eu sofri pra entender interfaces em go e confesso que prefiro a abordagem de outras linguagens pra isso, inclusive vou trazer um vídeo sobre “Coisas que não gosto em go” e esse é um dos pontos. Mas vamos imaginar o seguinte: como com esse cenário q vc apresentou, uma struct implementaria várias interfaces? Imagina ter: type User struct implemente Interface2, Interface3, interface4 Perderia totalmente o sentido de um objeto e estaria assumindo outros papéis além do papel de implementar métodos, sabe? O implements encaixa perfeitamente em linguagens que tem classes, mas no caso do que quiseram trazer algo mais simples, acredito que não faria tanto sentido Porém concordo com isso de ser esquisito o fato de não ter nada explícito
@maydersonmello
@maydersonmello Год назад
@@huncoding Hahahaha será um bom vídeo esse, o jeito é aderir mesmo e acostumar com esse jeito do Go rsrs muito obrigado pelas respostas!
@JamzaDzn
@JamzaDzn 2 года назад
cade o video configurando o neovim? to passando mal kkkkkk
@huncoding
@huncoding 2 года назад
Kkkkkkkkkk terça-feira que vem, as 9 da manhã. Já anota aí!
Далее