Como trabalhar com panic e erros em golang

Sdílet
Vložit
  • čas přidán 12. 09. 2024
  • Como usar erros e panic em go? Esse é um dos tópicos mais confusos pra iniciantes que vieram de linguagem interpretadas ou mesmo linguagens que usam exceptions.
    Evolua com desafios técnicos inspirados em testes reais de empresas de tecnologia:
    30% OFF na Black Friday
    💪 devgym.com.br/
    🏆Melhores vídeos do cana sobrel:
    * Dev em Portugal 2021 • 3 mitos sobre uma carr...
    * Dev em Portugal 2019-2020 • Dev em Portugal 2019-2020
    * Minha história contada em vídeos: • Minha 1a entrevista pr...
    * Meus testes práticos • Meu TESTE PRÁTICO em P...
    * Entrevistas de emprego • #1 Como é uma ENTREVIS...
    * Testes automatizados • Testes na programação ...
    * Como começar a programar • Escrevendo seu PRIMEIR...
    ▶️ Redes sociais
    Instagram: / filhodanuvem
    Twitter: / filhodanuvem
    GitHub: github.com/fil...
    🎥 Equipamentos usados nesse vídeo
    Amazon Brasil:
    Microfone: amzn.to/3zujQII
    Câmera (lente kit padrão): amzn.to/2UQspip
    Tripé: amzn.to/2UM6Xv4
    🕰Capítulos

Komentáře • 26

  • @diogoribeiro5831
    @diogoribeiro5831 Před 9 měsíci +1

    Ótimo vídeo. Um detalhe muito massa sobre panic é que mesmo quando ele ocorre o sistema ainda sim chama as defer funcs (casos elas existam).

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci

      Muito legal! Tem tantas coisas sobre erros e panics que tô achando que até rola um segundo vídeo. Vou deixar isso anotado aqui.

  •  Před 9 měsíci

    bah, essa sacada de wrapper eu não tava ligado. Muito bom! Descobri que tem uma função dentro do pacote errors que faz algo parecido, se chama errors.Join. Basicamente da para usar da mesma forma, mas no unwrap dele retorna toda a coleção de erros.

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci +1

      Muito bem pontuado Léo. Muito útil quando estamos trabalhando num loop e queremos guardar todos os erros ao invés de quebrar o loop.

  • @pauloafpjunior
    @pauloafpjunior Před 9 měsíci +1

    Muito bom, parabéns!

  • @JPMoura_
    @JPMoura_ Před 9 měsíci

    Muito bom maninho! Fala sobre o uso de logs no projeto(info,warn,debug,error) , e como estrutura-los para termos uma stacktrace bonitona😊

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci +1

      Boa! Queria mesmo falar de logs. Caso não tenha visto essa palestra aqui fala bastante de stacktrace de erros
      czcams.com/video/4WIhhzTTd0Y/video.htmlsi=Uwpj3kDp1kpdZ3ph

    • @JPMoura_
      @JPMoura_ Před 9 měsíci

      Show, ainda não tinha visto! Vlw

  • @victorbarros1130
    @victorbarros1130 Před 9 měsíci

    Tu é brabo demais, mano!
    Seu conteúdo é foda!

  • @paulogodinho3275
    @paulogodinho3275 Před 9 měsíci

    Que canal incrivel, acabei de me inscrever, muito bom o conteudo!

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci

      Opaa, muito obrigado e vem vindo Paulo.

  • @jlx8439
    @jlx8439 Před 9 měsíci +2

    esses videos me fazem querer aprender golang 😄 só um aviso, em algumas partes do video ficou um ruídozinho no microfone como se estivesse arranhado

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci

      Haha que bom que motivou e obrigado pelo feedback.

  • @WaldirBorbaJunior
    @WaldirBorbaJunior Před 9 měsíci

    Mano.. mano...mano... Aprendi coisa nova hoje.

  • @jacksonbarretojr
    @jacksonbarretojr Před 9 měsíci

    Absurdamente incrível como sempre! 🤓 Obrigado por isso!!!

  • @principe.borodin
    @principe.borodin Před 9 měsíci

    Muito interessante,

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci

      que bom que curtiu mano

    • @principe.borodin
      @principe.borodin Před 9 měsíci

      @@Filhodanuvem precisei rastrear uns erros no go que mesmo com ferramenta de monitoramento foi quase impossivel (melhorei o software, mas o erro persiste), mas com esse conhecimento eu vou poder melhorar o monitoramento dos erros em Go.

  • @MatheusCaiser
    @MatheusCaiser Před 9 měsíci

    E o método recover? Nossa esse cara evita aplicações darem shutdown.

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci +1

      Rsrs evito sim. Pra mim o recover nao nasceu pra usarmos panic e recover como try catch. O modo oficial de lidar com erros é retornando valores e o recover está lá pra evitar a aplicação de quebrar, se por exemplo uma conversão de tipo panicar ou até mesmo uma lib causar um panic fora do nosso controle. :)
      Mas no mundo ideal pra mim, a aplicação tem 1 recover por go routine no máximo.

  • @robinhopeixoto
    @robinhopeixoto Před 9 měsíci

    Na realidade tem que usar o `log.Panic` para "subir" um panic

    • @Filhodanuvem
      @Filhodanuvem  Před 9 měsíci

      Boa! Esse vídeo não falou de recuperar panics, a ideia era mesmo falar que você pode matar a aplicação com o fatal.
      Por outro lado eu não acho interessante subir panics na aplicação que já está rodando, eu só uso panic no momento de fazer ramp up.