Resolvendo DESAFIO de VAGA BACKEND com Java Spring + Arquitetura Limpa

Поделиться
HTML-код
  • Опубликовано: 7 янв 2025

Комментарии • 266

  • @magraum8162
    @magraum8162 Год назад +141

    Por favor, faz a parte de testes unitários, vai ajudar bastante para quem precisa de um insight de como começar, libs a utilizar e como pensar no teste. Tudo de melhor sempre 👊👊

    • @kipperdev
      @kipperdev  Год назад +40

      Boaa! Vou fazer sim, será um dos próximos videos do canal 💜

    • @ricardofarias1443
      @ricardofarias1443 Год назад +2

      Muito bom, continuando o projeto com os testes. Acho de grande valia uma série nesse sentido. Ir melhorando e aumentando a complexidade do projeto em nível pleno.

    • @joanersoncosta7997
      @joanersoncosta7997 Год назад

      ​@@kipperdevestou aguardando 🎉

    • @matheustadeu4934
      @matheustadeu4934 4 месяца назад

      Já tem o video dos testes unitários?

    • @devcramancio
      @devcramancio 4 месяца назад

      Já tem esse vídeo ?

  • @taylsonmartinez
    @taylsonmartinez Год назад +21

    Que show de conteúdo Fernanda passei pro time inteiro aqui! Abraços e continue por favor

    • @kipperdev
      @kipperdev  Год назад +1

      Show, valeuu Taylson! 💜

  • @matheuslucena1
    @matheuslucena1 Год назад +26

    Seria massa fazer um projeto simples de API do zero com TDD, dessa forma você ajudaria muito a galera com dois assuntos legais que é teste unitário e TDD.
    Ou as vezes até refazer esse mesmo projecto com TDD.
    Parabéns pelo canal.

  • @danielpelless
    @danielpelless Год назад +10

    fico assustado ao perceber que não sei NADA kkkkkkk muito foda o conteúdo..

  • @stefany4542
    @stefany4542 Год назад +3

    Te acho tão inteligente. As vezes acho que nunca vou mandar bem em programação de verdade.

    • @kipperdev
      @kipperdev  Год назад +4

      Vai sim, Stefany! É tudo questão de prática e estudo
      Confia em você 💜

  • @marcellobittencourt1836
    @marcellobittencourt1836 Год назад +9

    Não sou do Back, não sou do Java, muito menos manjo algo de Spring, mas adorei o vídeo! Mesmo não entendendo a maioria do conteúdo, é muito satisfatória a maneira que o conteúdo é explicado no vídeo. Show de bola!

  • @christianoliveira7975
    @christianoliveira7975 Год назад +3

    Muito incrivel ver a documentação, e a implementação no seu vídeo, parabéns! Tive um projeto em Java com Spring na Empresa que atuei um tempo atrás por isso sempre me mantenho atualizado mesmo hoje sendo Mobile com Flutter lá no trabalho.
    Excelente vídeo de verdade!
    Obs.: Implementações com AWS são muito usadas pelas empresas, seja usando S3, dynamoDb e afins... projetos que envolvam implementações com AWS de fato te preparam para o mercado, seu video faz a total diferença. Parabéns.

  • @rmauto6273
    @rmauto6273 8 месяцев назад +1

    Parabéns, Kipper. Muito massa teus ensinamentos. Isso é uma aula gratuita e de qualidade. Hoje domingo, eu tirei pra ficar descansando e pensei 'acho que vou ver algum desafio tecnico da Fernanda e vou fazer. ai eu to vendo teu video e vou fazer por conta propria. No começo, eu via e copiava. Hj me sinto mais confiante pra fazer só mesmo errando. Prefiro até. A gente evolui muito.

  • @kipperdev
    @kipperdev  Год назад +17

    👉 Livro Arquitetura Limpa
    amzn.to/48sC8g2

  • @EdsonYamamoto
    @EdsonYamamoto Год назад +1

    Muito bom. sou dev .net core mas gosto de ver outros projetos e outras linguagens de programação e vc explica muito bem.

    • @kipperdev
      @kipperdev  Год назад +1

      Muito obrigadaa, Edson 💜
      Acho legal isso que você faz, você acaba se mantendo atualizado sobre outras tecnologias!

  • @Curiosidades-ki2oi
    @Curiosidades-ki2oi Год назад

    Arquitetura exagonal, que delicia, é lindo demais ver funcionando nessa arquitetura

  • @matheustadeu4934
    @matheustadeu4934 4 месяца назад

    Melhor exemplo que já vi e o mais claro de arquitetura limpa, obrigado!

  • @fernandorodrigues6967
    @fernandorodrigues6967 Год назад +2

    Ainda nem terminei de assistir, mas quero parabenizar por este vídeo e por todo conteúdo que tu tens disponibilizado no teu canal.
    Conteúdo de qualidade, bem explicado, didática muito clara e objetiva.
    Com certeza, tua paixão pela tecnologia está ajudando muitos desenvolvedores, independente da "senioridade", a evoluir pessoal e profissionalmente.
    👏👏👏👏

  • @CaioTomazoD́Berg-b9j
    @CaioTomazoD́Berg-b9j 4 месяца назад

    Pow que conteúdo maneiro, excepcional a sua atenção e paciência na hora de ensinar o conteúdo para os alunos na execução da programação. E o tema do vídeo foi o mais incrível 😯 obrigado Kipper 🙏❤🥷

  • @wilknisdeyvis5995
    @wilknisdeyvis5995 Год назад +1

    Muito bom Fernanda! Você nunca deixa a desejar! Já estava procurando sobre aplicações com email service e AWS, aí vem você e entrega tudo!!! Agora só estou esperando aquele vídeo sobre TDD com JUnit e Mockito eim!

    • @kipperdev
      @kipperdev  Год назад

      Que bom que gostouu, Deyvis 💜
      Hahah vou fazerr

  • @matheusschmidtbento4751
    @matheusschmidtbento4751 7 месяцев назад +3

    Quem estiver vendo o vídeo atualmente e estiver com esse erro no pom.xml -> Dependency conflict in aws-java-sdk-ses: commons-logging:commons-logging:1.2 conflict with 1.1.3(Maven dependency conflict) 3.0.0+
    basta adicionar esse trecho de código antes do bloco de dependencias


    commons-logging
    commons-logging
    1.2

  • @matheusserraouchoa8222
    @matheusserraouchoa8222 Год назад +1

    Amassando todo e qqr nlw ou aula da rockeat seat. Gesus, apredam com essa mulher como se faz aula ....

  • @TheLuizSK
    @TheLuizSK Год назад +1

    jesus cristo eu caí aqui de paraquedas... que pesadelo fazer essa bobeirinha em java haha vcs são malucos mesmo. Mas muito bem explicado a encapsulação de responsabilidade e das chamadas recursivas 👏👏

  • @gabijinx
    @gabijinx Год назад +1

    fernanda, você é minha inspiração pra ser dev. meu deus, que conteúdo incrível

    • @kipperdev
      @kipperdev  Год назад +1

      Muito obrigadaa, @gabiqss 💜
      Desejo muito sucesso na sua jornada!

  • @welberzindaprogramacao
    @welberzindaprogramacao Год назад

    Vídeo muito bom! Continuo firme estudando Spring pelo seu canal, muitíssimo obrigado!!!

    • @kipperdev
      @kipperdev  Год назад

      Que legal, Welber!
      Fico feliz em estar ajudando 💜

  • @nfs03
    @nfs03 Год назад +1

    Seus vídeos são os melhores!! Parabéns pelo conteúdo, bom demais.

    • @kipperdev
      @kipperdev  Год назад +1

      Muito obrigadaa, @nfs03 💜

  • @DevMalu
    @DevMalu Год назад +1

    Nossa, que conteúdo maravilhoso!! Assisti e já salvei para tentar fazer junto passo a passo haha adoro o seu canal, ajuda demais a todos! Eu que estou começando então, é maravilhoso! Obrigada mesmo 💖🙏🚀

    • @kipperdev
      @kipperdev  Год назад +2

      Obrigadaa Malu, fico feliz DEMAIS que o video tenha ajudado de alguma forma 😊

  • @backend-v9s
    @backend-v9s Год назад +1

    Muito top o desafio sendo resolvido, estou ansiosoooo pelo teste unitário

  • @marcioviananabr
    @marcioviananabr Год назад

    Ótimo vídeo. Muito didático. Sim, queremos vídeos tratando sobre testes unitários. Obrigado!

    • @kipperdev
      @kipperdev  Год назад

      Muito obrigadaa 💜
      Boa! Já está na lista dos próximos vídeos!

  • @thiagosdev
    @thiagosdev 5 месяцев назад

    21:20 Pra mim isso eh um dos principios do solid: dependency inversion principle

  • @MarcoAntonioBarcelosLimaFilho
    @MarcoAntonioBarcelosLimaFilho Год назад

    Muito legal e enriquecedor os seus vídeos Fernanda! Continue assim e todo sucesso do mundo, obrigado por compartilhar!

  • @andersonxavila
    @andersonxavila Год назад

    Vídeo muito bom, inclusive para quem tá iniciando no Spring, como eu. Sou novo no canal e já vi que tenho 75 vídeos para maratonar 😅

  • @firstshield9507
    @firstshield9507 Год назад +9

    Video top demais! Fernanda depois poderia trazer resolvendo desagios técnicos para estágio/junior com Java?

  • @AlexhKranz
    @AlexhKranz Год назад

    Fernanda, teu canal é muito bom! Parabens.

    • @kipperdev
      @kipperdev  Год назад

      Muito obrigada Alex! 💜

  • @viannavictor27
    @viannavictor27 Год назад

    Nossa, Fer! Teus vídeos me ajudam mt !!!!!!
    Iniciando minha carreira para tentar ser um dev na área de back!!!
    Parabéns pelo conteúdo o/

    • @kipperdev
      @kipperdev  Год назад

      Boaa, Vianna, que show!!
      Desejo todo o sucesso pra você 💜

  • @DaviWho
    @DaviWho Год назад

    fernanda você é 10 demais, não tem como tô sempre aqui comentando nos seus vídeos e parabéns demais!!

  • @johnnymoreira7859
    @johnnymoreira7859 Год назад +1

    Fernanda parabéns, vc foi uma das pessoas que me ajudaram a entrar no mundo Java com seus conteúdos. Mas se eu não estiver engando, quando usamos dependência via construtor não precisamos passar o autowired, acho que essa mudança veio no spring 3. E sim teste seria muito top e vc poderia fazer uma trilha implementando os outros serviços desse repositório da Uber, sei que vc é fera tbm no javascript, pq não fazer essa série implementando várias techs

  • @fabiano.langner
    @fabiano.langner Год назад +1

    é uma boa fazer os testes unitários desse desafio! Abração!!!!

    • @kipperdev
      @kipperdev  Год назад

      Abraço, @fplanger 💜
      Já coloquei lista dos próximos vídeos!

  •  10 месяцев назад

    Duvidas:
    1. No minuto 27:34 você adiciona na mão o e-mail do remetente, porque não fez usando buscando de algum arquivo de configuração ou variável de ambiente? Geralmente implementa-se assim ocultando coisas deste tipo do condigo. Qual seria a melhor solução ou boa prática neste caso?
    2. Ainda sobre o minuto 27:34 como faria para buscar o e-mail de um arquivo de configuração, de uma variável de ambiente, ou secret manager da AWS; de forma que não expusesse um e-mail diretamente no código? Como faria aplicando a melhor pratica?
    3. No minuto 29:05 você usou um try catch, capturando a exceção e mandando para frente. Porque ele foi implementado na classe de EmailSenderService? Existe outra abordagem que não seja lançando exceção? Como ficaria, p.ex., se eu quisesse mandar uma notificação que houve erro no envio?

  • @leonardorochedo3686
    @leonardorochedo3686 Год назад

    Achei seu canal aqui na TL e parabéns manda muito com Java.
    Sucesso!

  • @arozendojr
    @arozendojr Год назад

    Você usa o clockify, track de tempo e dinheiro, tipo você coloca seu projetos e usa o start, vai contabilizando tempo e dinheiro gasto em cada projeto, tanto para cobra algum cliente, quanto para você mesmo veja quanto tempo e dinheiro está invetino em algum projeto

  • @KermesSalustiano
    @KermesSalustiano Год назад

    Voce faz parecer tão facil! gosto demais dos seus videos muito obrigado!

    • @kipperdev
      @kipperdev  Год назад

      Que bomm, @KermesSalustiano, eu que agradeço
      Fico feliz que tenha ajudado você 💜

  • @lucasricardo1_
    @lucasricardo1_ Год назад

    Conteúdo incrível e de grande valia! Muito obrigado por compartilhar o conhecimento Fer

  • @anthonymeds4440
    @anthonymeds4440 Год назад

    Muito massa esses videos de desafios backend com Spring , showw

  • @cassiolima9599
    @cassiolima9599 Год назад

    perfeito o vídeo, aprendi bastante
    depois faz um vídeo mostrando como criar testes unitários e de integração, boas práticas na criação desses testes, etc...

    • @cassiolima9599
      @cassiolima9599 Год назад

      ou também fazer um vídeo criando um projeto seguindo os ensinamentos do livro código limpo

  • @eulucaspedroabreu
    @eulucaspedroabreu Год назад +7

    Acho que a complexidade do desafio na real era maior, pois não era criar abstração para dois email service provider, mas sim uma abstração between two email service providers. Ou seja, provavelmente eles querem que o output de um service seja manupulado na abstração e seja enviado como input de outro service. Teria sido legal ver por completo, mesmo que ficasse ainda mais longo! Parabéns pelo conteúdo!! 🙌

    • @TheLuizSK
      @TheLuizSK Год назад +1

      mas o controlador ja faz isso. É so guardar o request de um provider com o remetente de outro, ela so não criou pro outro e usou o email pessoal, não ?? 🤔

    • @supern4ut3
      @supern4ut3 Год назад +2

      1. Em relação à injeção de dependências, você poderia optar por usar a anotação @RequiredArgsConstructor do Lombok e declarar as dependências como private final. Isso não apenas torna o código mais conciso, mas também fortalece a imutabilidade.
      2. Dependendo da complexidade e do tamanho da sua aplicação, seria interessante estruturá-la em módulos do Maven. Isso facilitaria o gerenciamento de dependências e minimizaria os riscos de violações das regras de arquitetura limpa por parte dos desenvolvedores.
      3. Notei um pequeno deslize em sua implementação que poderia ser melhorado: o controller EmailSenderController deveria depender da abstração EmailSenderUseCase em vez da implementação EmailSenderService. Isso está mais alinhado com o princípio da inversão de dependência, que sugere depender de abstrações e não de implementações concretas.

  • @douglas2085
    @douglas2085 Год назад

    como estudante de java, é muito bom encontrar conteúdo que não seja CRUD... mesmo assim, achei difícil toda essa lógica de interfaces de regras de negócio, interfaces de serviço. Mas é isso mesmo, tudo que é novidade incomoda rsrs... parabens Fernanda, e obrigado.

  • @leonardofmartins
    @leonardofmartins Год назад

    Fê, seus vídeos são excelentes. Aprendendo muito aqui. Muito obrigado e parabéns!
    Só um dica: o tamanho da fonte do código no IntelliJ pode ser um pouco maior, já que tem bastante espaço vazio no lado direito da tela. Pra quem assiste ao vídeo em telas menores, aumentar o zoom de exibição ajuda bastante.

  • @miguellopes9177
    @miguellopes9177 Год назад +1

    Acho que seria Interresante um video sobre o modulo web flux do spring

  • @filipe222345
    @filipe222345 Год назад

    Boa Fê , sempre o conteúdo é bastante didático e já quero os testes unitários .

    • @kipperdev
      @kipperdev  Год назад

      Valeuu @filipe222345 💜
      Esse vídeo vai vir!!

  • @alexandreoliveira8438
    @alexandreoliveira8438 Год назад +1

    Ótima aula Fernando, faz vídeo de testa pra gente por favor.. e se possível faz utilizando JUnit e Mockito..Muito obrigado

    • @kipperdev
      @kipperdev  Год назад +1

      Oii Alexandre! Muito obrigado 💜
      Soltei um vídeo há 2 dias sobre testes unitários. Assiste lá e me diz o que achou!
      Espero que goste!

  • @victorDesenvolvedor
    @victorDesenvolvedor Год назад +1

    Bem bacana esse exemplo, foge um pouco dos tradicionais CRUD's, mas parece ser algo para Júniors mais experientes ou plenos

  • @techno-info-o9s
    @techno-info-o9s Год назад

    Por favor, faça um video que contenha o seguinte: API Rest + Testes Unitarios + Docker com Deploy na Nuvem (Railway ou outra plataforma).
    Obrigado por compartilhar seu conhecimento!

  • @joshbarros1995
    @joshbarros1995 Год назад

    Seu canal é top!!! Obrigado por compartilhar com a gente!!!

  • @natafontoura1297
    @natafontoura1297 Год назад

    Conteúdo muito bom, parabens Fernanda, com certeza irá ajudar muita gente 🙏

  • @jeffersonpcinfo
    @jeffersonpcinfo Год назад

    Ótimo conteúdo Fernanda. Parabéns!!!!

  • @LoperaTw
    @LoperaTw Год назад +1

    Lança pra nóssss esses Teste Unitários

    • @kipperdev
      @kipperdev  Год назад +1

      Que bomm, @LoperaTw
      Fico feliz que tenha gostado 💜
      Esse vídeo vai sair sim!!

  • @littleghoost
    @littleghoost Год назад +1

    Se materia for fisica a gente deixa a torneira ligada, mas o sol pode queimar, muitos ratos aparecem voando

  • @LucasAnghinoni90
    @LucasAnghinoni90 Год назад

    47:22 muito bom o Video, só fiquei com uma dúvida, não seria a interface do usecase que deveria ser usada no controller?

  • @mackympaka418
    @mackympaka418 Год назад

    Realmente sou seu fã Fernanda, me diz o que tenho de fazer pra chegar ao seu nível, é que és mesmo muito boa naquilo que fazes

  • @maximo9482
    @maximo9482 Год назад

    Show! Eu nunca ia saber interpretar esse teste.

  • @joshbarros1995
    @joshbarros1995 Год назад +4

    Pequena sugestão: Seria interessante um video sobre Websockets com Spring ;)

    • @zec_s
      @zec_s Год назад

      realmente seria mt bom

  • @odevperovano
    @odevperovano Год назад +1

    Não entendi como o spring vai escolher qual e-mail gateway injetar caso exista mais de um implementado. É oque tiver a notação autowire?

  • @pablogonzalez1924
    @pablogonzalez1924 Год назад

    Muito top seus vídeos, Por favor, faz a parte de testes unitários.

  • @andresinho20049
    @andresinho20049 Год назад

    No momento que estou mandando esse comentário, estou no minuto 30:25, estou curtido, legal que você sabe explica as etapas e o porque esta sendo implementado de tal maneira, mas acredito que o segundo service não era necessário nesse caso, compreendo o que disse ta dahora o video.
    Considerando que seus clients estão chamando a interface, as implementações precisarão respeitar essa interface, igual você anotou... Ai depois não seria apenas criar uma nova implementação pensada na outra infla, e com @Qualifier("") você apontava
    ?

    • @kipperdev
      @kipperdev  Год назад

      Fico feliz que você esteja gostando, André 💜
      Pois é, tem muita questão de projeto e arquitetura de solução. Às vezes um time vai preferir seguir uma estrutura diferente, e tá tudo bem, é questão de preferência.

  • @guilhermewill8733
    @guilhermewill8733 Год назад +1

    Fê, por que não colocar a anotação @Autowired já na instanciação da dependência ao invés de criar um construtor para essa dependência?

  • @darthzenos
    @darthzenos Год назад

    Não entendo nada, sou consultor empresarial. Mas achei fascinante.

  • @thgdsa9090
    @thgdsa9090 10 месяцев назад

    Obrigado pelo vídeo, faz mais!

    • @kipperdev
      @kipperdev  10 месяцев назад +1

      Vou fazerr 💜

  • @vitorcast.g2331
    @vitorcast.g2331 Год назад

    Eu não entendo nada do que ela fala, mas gosto de assistir me ajuda na facul de ADS

  • @firzera
    @firzera Год назад

    Olá. Não sei se fez em vídeos posteriores, mas você importou o Lombok para o projeto, e não usou. De repente seria legal mostrar para o pessoal como funcionaria a injeção de dependência por exemplo, sendo auxiliado pelo Lombok utilizando RequiredArgsConstructor a partir da definição das propriedades como final, você acabaria não precisando escrever essas injeções por construtor com o Autowired, e deixaria o código um pouco mais clean. No mais, sua didática é impressionante Fernanda, parabéns (:

  • @viit0r
    @viit0r Год назад

    Que conteúdo incrível, Fernanda! Obrigado por nos auxiliar tanto a entender esses conceitos mais complexos, sua didática é incrível!
    Fiquei com uma dúvida em relação a interface de Gateway. Se fizermos o teste completo, implementando outro email provider, devemos implementar a mesma interface de gateway para essa nova implementação? Como o Java identifica qual o email provider que queremos utilizar?

  • @agnosantiago5517
    @agnosantiago5517 Год назад

    Parabéns pelo conteúdo. Adoraria ver uma colab com as feras: Fernanda Kipper e Michelle Brito 🎉🎉🎉

    • @kipperdev
      @kipperdev  Год назад

      Muito obrigadaa, @agnosantiago5517 💜
      👀👀

  • @MeuContato-t6f
    @MeuContato-t6f Год назад

    Fernanda minha pacera, tem como fazer um vídeo falando de mTLS no Spring boot ?

  • @ericnevesr
    @ericnevesr Год назад

    Qualidade do vídeo tá monstra!!

  • @PaGow
    @PaGow Год назад +2

    Okay, Injectou o EmailSenderService conhece o EmailSenderGateway e o Ses tem que implementar, dessa forma o Spring injecta automaticamente a classe, mas e se tiver outras classes que implementam o gateway ao mesmo tempo, como é que fica?

    • @joaolucassilva6325
      @joaolucassilva6325 Год назад

      É possível ter mais de uma implementação, mas será necessário diferencia-lás. Há várias formas de fazer isso, uma delas é adicionar a anotação Qualifier com um nome único da implementação na definição da classe e usar a mesma anotação quando fizer a injeção de dependência do atributo que faz menção a interface. Recomendo a leitura do artigo Spring Bean Names do site Baeldung.

  • @caferrari
    @caferrari Год назад +1

    Só faltou a parte de failover que está no desafio, se um provider falhar tem que fazer fallback para outro e garantir HA.
    queria ver algum algoritimo de circuit break =/..

    • @fabricioaraujo7642
      @fabricioaraujo7642 Год назад

      Ja tentou implementar isso você mesmo ? Por que esperar por um vídeo ?

    • @caferrari
      @caferrari Год назад

      @@fabricioaraujo7642 já sim, seria legal para aprender outros approaches, até por que não trabalho com Java. E esse ponto estava no desafio

  • @miguelcaf
    @miguelcaf Год назад

    Show de bola. Por mim pode fazer o vídeo de junit tb!

    • @kipperdev
      @kipperdev  Год назад +1

      Valeuu 💜
      Ja prometi esse vídeo há tempo hahah vou gravar essa semana!

  • @guzinreidelas
    @guzinreidelas Год назад

    a velocidade que você fala e a didatica é perfeita c é muito fera pprt

  • @rodrigokunzlerweber
    @rodrigokunzlerweber 4 месяца назад

    Meus parabéns, continue dando aulas, ajuda muitooo. Tenho 19 anos e estou te acompanhando constantemente.
    Uma dúvida, ali na parte do EmailSenderGateway eu tive que colocar o @Component, porque estava me dando um erro de "Could not autowire. No beans of 'EmailSenderGateway' type found"
    E so dessa maneira que eu consegui resolver, porque o Spring não estava conseguindo achar o construtor, e ai que esta a minha pergunta, como que na tua aplicação funcionou kkk

  • @Rene-Navarro
    @Rene-Navarro Год назад +2

    Kkk mano entendi nada… mas é daora de ver parece aqueles hacker de filme falando 🤣🤣

  • @leandropilz7996
    @leandropilz7996 Год назад +1

    Parabéns, muitooooo bom mesmo.

    • @kipperdev
      @kipperdev  Год назад

      Muito obrigadaa, @leandropilz7996 💜

  • @eileooo
    @eileooo Год назад +1

    Ótimo vídeo, Fê! No caso da abstração entre os dois serviços daria para fazer com a interface e utilizar a anotação @Qualifier?

  • @daniel_goncalves
    @daniel_goncalves Год назад

    A documentação poderia ser feita usando o Swagger. É bem tranquilo.
    Uma dúvida, se você tivesse que fazer alguma fazer uma validação de negocio. Digamos que a ubber tem uma lista de palavras proibidas no corpo do email. Essa validação teria que ficar ali no Core correto? Pois é parte do caso de uso. Como ficaria essa implementação?

  • @matheustadeu4934
    @matheustadeu4934 4 месяца назад

    Onde seria o lugar mais adequado para selecionar qual serviço de envio de email usar?

  • @gustavobarbosa8287
    @gustavobarbosa8287 Год назад

    Essa câmera esculachou fer, topppp

    • @kipperdev
      @kipperdev  Год назад

      hahahh muito obrigadaa, Gustavo 💜
      Tivemos uma evolução!!

  • @glauberpeterson6641
    @glauberpeterson6641 Год назад

    Seus vídeos são ótimos MDS ❤❤❤😮😮

  • @otnirodrigues2212
    @otnirodrigues2212 Год назад

    Parabéns. Ótimo conteúdo!!!

    • @kipperdev
      @kipperdev  Год назад +1

      Muito obrigadaa, @otnirodruigues2212 💜

  • @mufinagamer
    @mufinagamer Год назад

    É o clássico, segue todo o passo a passo e no fim da erro, até agora estou tentando entender isso.

    • @edmilsonferreira5204
      @edmilsonferreira5204 Год назад +1

      KKKKKKK literalmente eu nesse momento

    • @mufinagamer
      @mufinagamer Год назад

      @@edmilsonferreira5204 man o código igual ao que foi ensinado kkk mas não roda. E pior, não tem um git pra comparar kkk

    • @kipperdev
      @kipperdev  Год назад +1

      Oii, @mufinagamer
      Adicionei o link do repositório na descrição, caso você queira dar uma olhada pra comparar com o seu projeto

    • @mufinagamer
      @mufinagamer Год назад

      me salvou!! obrigadin!@@kipperdev

    • @mufinagamer
      @mufinagamer Год назад

      @@edmilsonferreira5204 o erro estava na parte do regions, aparentemente o spring não conseguiu ler o arquivo "application.properties". Dai precisei por na mão as credentials e a region. No meu caso deu bom.

  • @wevertontsousa
    @wevertontsousa Год назад

    Oi gente!
    Caso o meu Use Case fosse retornar algo, para um Presenter por exemplo, a classe EmailResponse que seria um DTO assim como o EmailResquet, onde ela ficaria, também no Core, ou seria um DTO da camada de Infra ou quem sabe da Application?
    O meu Controller sendo da camada mais externa, por usar Framework, ele pode usar um DTO da camada mais interna Core "(por isso a minha dúvida)?

  • @duduoliveira5281
    @duduoliveira5281 Год назад

    Opa, tudo bom? seus videos sao inspiradores. Me tire uma duvida, voce faz o teste antes e depois posta um video no youtube ou faz eles de primeira

  • @eulucaspedroabreu
    @eulucaspedroabreu Год назад +1

    Fê, enquanto fazia o projeto, decidi eu mesmo procurar onde encontrar a dependência, ao invés de copiar. Acontece que foi muito difícil encontrar, tantas versões, nenhuma documentação clara na AWS sobre a diferença entre as versões. Fui, então, com a versão mais recente. Só que a API mudou muuuuito! Eles passaram a utilizar um padrão diferente e achei muito mais verboso, confuso. Dito isso, queria sugerir:
    1. O que acha de fazer um vídeo falando sobre onde encontrar e como navegar nesse mar de dependências que são publicados?
    2. Analisar a atualização na api e mostrar como aprender a implementar quando a documentação é ruim.

    • @kipperdev
      @kipperdev  Год назад +2

      Sei como é, Lucas!
      Às vezes é muito chato pesquisar em algumas documentações pq é difícil entender o que estão querendo nos dizer, às vezes os exemplos são péssimos tbm.
      Acho uma boa um vídeo falando disso, muito obrigado pela ideia 💜

    • @joserodrigues5899
      @joserodrigues5899 Год назад

      Estou temdo dificuldade aqui com a dependencia da aws também, só confiando não funcionou, busquei a versão mais recente e também não está funcionando.
      no pom está OK, não da erro nenhum, mas na hora de adicionar no condigo o intelij não acha a dependencia, e mesmo tentanto importar na mão, não esta dando certo.

    • @kipperdev
      @kipperdev  Год назад +1

      Oii, @@joserodrigues5899
      Tenta dar uma olhada no comentário que eu deixei pinado, parece ter ajudando o pessoal. Depois também dá uma olhada no repositório da solução que eu deixei no link do vídeo e compara com o seu projeto

    • @joserodrigues5899
      @joserodrigues5899 Год назад

      @@kipperdev a noite vou dar uma olhada no repo, procurei ele mas não havia achado. Mais tarde procuro de novo e volto aqui caso consiga resolver.

  • @eng.wandeson
    @eng.wandeson Год назад

    Interessante a explicação!

  • @Canemahue
    @Canemahue Год назад

    conteúdo bom, obrigado, parabéns.

  • @gersonsouza3389
    @gersonsouza3389 Год назад

    Boaaaaa, bons conteúdos!!

  • @tonyoliveira4323
    @tonyoliveira4323 4 месяца назад

    Olá, alguns milhões de anos depois, hoje estava fazendo este teste e me deparei com um erro: Error: Couldn't connect to server
    Durante o teste, voce abriu o Insomnia nesta parte e não consegui fazer igual.

  • @arioldo
    @arioldo Год назад

    Excelente o vídeo! Mas uma dúvida, quando criamos uma service (ou controller e afins) e anotamos ela, o spring já não entende que o construtor já ganha um autowired por padrão? Ou você colocou essa última anotação só pra deixar explícito mesmo?

  • @nicolasbueno3522
    @nicolasbueno3522 Год назад +1

    socorro alguem me ajuda, alguem tem o codigo fonte que ta rodando direito, o meu nao to conseguindo rodar
    ta dando erro de conexao com.amazonaws.SdkClientException: Failed to connect to service endpoint:

    • @kipperdev
      @kipperdev  Месяц назад

      Oii Nicolas, já conseguiu resolver?
      Tenta mandar lá na comunidade do Discord. O pessoal é super parceiro e disposto a ajudar discord.gg/D5sStBByFr

  •  6 месяцев назад

    Tivesse uma outra implementação além da AWS ficaria melhor o entendimento, eu acredito

  • @pauloheres
    @pauloheres Год назад

    amo seus vídeos :)

  • @masterthug8647
    @masterthug8647 Год назад +1

    O negócio mesmo é no code, muito mais rápido, não precisa saber tantos detalhes técnicos. No code tem uma grande vantagem por ganhar tempo, o que as empresas mais precisam atualmente

    • @riseunk0
      @riseunk0 Год назад

      a questão não é se é rápido codar ou não, mas sim a escalabilidade disso, como você implementaria uma escalabilidade para um sistema no-code para que tenha 2 milhões de requisições por SEGUNDO em um código gerado automaticamente? como você implementaria um sistema desses para fazer requisições para aws sem derrubar tudo por excesso de requisições ? Não dá. NoCode e LowCode existe a vários e vários anos, são muitas questões para colocar em jogo além do tempo de desenvolvimento de um projeto.
      Um sistema no-low code gera um código já foi mastigado por um programador que projetou e implementou a plataforma, e você fica preso a isso.

    • @masterthug8647
      @masterthug8647 Год назад +1

      @@riseunk0 elas são bastante adaptativas hoje em dia. Da pra fazer tudo e mais um pouco, esse é o futuro, é rápido. É isso que as empresas devem se preocupar, tempo, se demorarem pra entregar algo, ficam pra trás, por isso devem desenvolver cada vez mais rápido. O Banco do Brasil tem utilizado no code na maior parte dos seus sistemas atualmente por exemplo.

    • @riseunk0
      @riseunk0 Год назад

      @@masterthug8647 Tente fazer um algoritmo de recomendação de produto simples, estilo de um e-commerce, se tiver alguma ideia de como implantar isso eu realmente quero saber.

    • @riseunk0
      @riseunk0 Год назад

      @@masterthug8647 "O Banco do Brasil tem utilizado no code na maior parte dos seus sistemas atualmente por exemplo". De onde você tirou isso amigo?

    • @masterthug8647
      @masterthug8647 Год назад

      @@riseunk0 ruclips.net/user/livez0W6smxaF4s?si=GZlG-6cC8xqoSwoj
      Presta atenção

  • @lucassantana00
    @lucassantana00 11 месяцев назад

    Fê, uma unica coisa que não entendi muito bem. No desafio do uber precisariamos implementar 2 serviços de envios de email atraves de um mesmo gateway, e caso um estivesse indisponivel, acionar o outro serviço.
    Como que fariamos pra mudar o serviço de envio de emails usado como base sua disponibilidade? Por exemplo, caso o AWS SES estivesse indisponivel, como mudariamos para um mail gun?

    • @kipperdev
      @kipperdev  10 месяцев назад

      Oii Lucas, ótimo comentário!
      Eu faria de duas formas, uma é fazendo um fallback, exemplo:
      Primeiro, tento bater na AWS SES
      Se der exceção, então chamo o outro serviço tipo mailgun
      É bem simples mas já funcionaria
      Outra forma, seria ter uma forma de controlar o código remotamente, através de uma feature toggle por exemplo, o nosso código consumiria o valor dessa chave e então baseado nela ele iria decidir se usa o serviço AWS SES ou Mail Gun. E ai, a gente poderia ter um dashboard pra acompanhar a disponilidade dos serviços e fazer essa troca "ao vivo" caso notasse algum problema de disponibilidade, o problema é que ia precisar monitorar o tempo todo.
      Tipo se(chaveEMAIL == true) então AWS SES
      senão Mail Gun
      Basicamente uma feature toggle é uma técnica que permite que a gente altere o comportamento do nosso sistema sem alterar o código. O valor dessas chaves fica salvo em algum serviço, tipo o Config Cat, e nosso código consume esse valor de lá através de uma requisição HTTP, e usa esse valor pra tomar uma decisão. E nós conseguimos alterar os valores através do portal da ferramenta, como se fosse um editor de texto mesmo, onde a gente pode mudar o valor que é enviado pro nosso código.

  •  6 месяцев назад

    Eu implementei, funcionou, mas eu não entendi foi nada KKKKK
    Vou assitir mais uma vez e pesquisar sobre o conceito Clean Arquiteture

  • @ArthuurRocha
    @ArthuurRocha Год назад

    O meu não funciona por nada kkk
    Está dando um SkdClientException : Failed to connect to service endpoint

  • @daeja2198
    @daeja2198 Год назад

    Olá, pessoal.
    Tenho uma dúvida, se eu acompanhar o video e realizar em conjunto, no final eu posso colocar no meu github para mostrar o aprendizado? Ou não seria válido uma vez que foi feito seguindo a lógica de outra pessoa? No caso da Fernanda.
    Obrigado!

    • @kipperdev
      @kipperdev  Год назад +1

      Oii @daeja2198
      Pode colocar sim!
      Só é interessante você deixar claro no readme do repositório quando você tem uma aplicação que foi construida seguindo algum tutorial.
      Mas não tem problema não, pode colocar!