Zustand: O Gerenciador de Estado que Está Mudando o Jogo e que Você Precisa Experimentar

Поділитися
Вставка
  • Опубліковано 2 гру 2024

КОМЕНТАРІ • 106

  • @hendrickmanenga9213
    @hendrickmanenga9213 6 місяців тому +6

    Vi outros vídeos antes desse e só complicaram algo que é bem simples, mas com a tua didática entendi bem rápido!

  • @eriveltondasilva6878
    @eriveltondasilva6878 3 місяці тому +1

    Zustand já é fácil, com essa explicação fica incrível, parabéns pelo trabalho

  • @franciscomenezes6970
    @franciscomenezes6970 Місяць тому

    O zustand não so me ajudou como ferramenta como me fez entender o funcionamento do REDUX excelente explicação parabńes.

  • @HerlonCosta
    @HerlonCosta Рік тому +2

    Cara, didática sensacional. Zustand é uma ferramenta, realmente, muito poderosa!

  • @daviseares
    @daviseares 9 місяців тому +5

    Tive um problema com Zustand em um app que manipula e persist grande quantidade de dados. Aparentemente o middleware de pesist do zustand ainda não é tão eficiente. Então tomem cuidado na hora que forem usar a ferramente dependendo da sua aplicação, vai pecar na performance. De resto, é uma ferramente boa! Provavelmente vou usar o jotai pra resolver esse problema ai.

  • @nathansantos4197
    @nathansantos4197 6 місяців тому +1

    Sensacional sua didatica. Não conhecia o zustand mas agora vou começar a praticar e talvez posteriormente utilizar nos projetos futuros com clientes. Valeu!

  • @stn9667
    @stn9667 5 місяців тому

    Mesmo com conhecimento 0 de Redux ou Zustand sua didática me fez absorver muito, valeu mano

  • @cnascimentobr
    @cnascimentobr Рік тому +5

    Parabéns pelo video. Dando um pouco mais de overview, o atomic selector como vc mencionou ele detecta alterações com igualdade estrita (antigo === novo) por padrão, isso já é eficiente e otimizado. Algumas pessoas preferem assim. Mas se quiser criar um objeto único dai o recomendado é o uso do useShallow para evitar renderizações desnecessárias. Ex:
    // Ok fazer assim e recomendável
    const foo= useBearStore((state) => state.foo);
    const bar= useBearStore((state) => state.bar);
    // Se quiser juntar tudo dai melhor usar assim
    import { useShallow } from 'zustand/react/shallow';
    const [foo, bar] = useBearStore(
    useShallow((state) => [state.foo, state.bar])
    );
    Zustand é muito bom. 😀

    • @joaobibiano
      @joaobibiano  10 місяців тому +2

      excelente! obrigado por compartilhar

  • @luanramalho8174
    @luanramalho8174 Рік тому +2

    Que didática top. Parabéns! Ganhou um seguidor.

  • @EduardoDesenvolvedorReactnativ
    @EduardoDesenvolvedorReactnativ 10 місяців тому

    Cara vc é um anjo só pode, tava quebrando a cabeça com redux e você apareceu com um milagre para nos ajudar, agradeço d+. LIKE LIKE LIKE

  • @CesarHenriqueDaSilvaMaranho
    @CesarHenriqueDaSilvaMaranho 11 місяців тому

    Ele foi um game change em um projeto! muito bom! conseguimos otimizar e ganhar 5x mais desempenho!

  • @mayromyller4086
    @mayromyller4086 Рік тому +4

    Visto isso, aprendam Redux ainda assim, é o padrão de mercado. Sensacional vídeo. Acho que o pessoal do Zustand tbm são os criadores do Jotai que é uma outra boa alternativa, porém mais simples.

    • @noproblemskyi
      @noproblemskyi Рік тому +2

      Acho que so procuraria aprender redux se eu fosse aplicar pra alguma empresa que tenha, graças a Deus a empresa q eu trabalho a gente usa zustend e os freelas que faço eu uso zustend ^^, mas é verdade no mercado tem mt projeto em redux ainda!

    • @joaobibiano
      @joaobibiano  Рік тому +2

      Eu diria que legado vai usar redux, sim, mas projetos novos, acho difícil... no máximo redux toolkit

  • @alison.aguiar
    @alison.aguiar Рік тому +1

    Cara incrível inclusive eu tive que usar o rxjs justamente pra pegar o estado de outra instância do react. Se soubesse dessa lib teria usado ela.
    Parabéns 🤝🏻🤝🏻

  • @stilviopedro4991
    @stilviopedro4991 11 місяців тому +1

    Parabéns pelo video, muito simples de entender.

  • @AllysonTS
    @AllysonTS 11 місяців тому +1

    João o Zustand substitui o React Query, ou eles se completam? (to no início do vídeo ainda não sei se até o final você cita algo kkk)

  • @noproblemskyi
    @noproblemskyi Рік тому +3

    Tenho usado a um tempo adoro o zustend simples e facil e funciona bem com TS

  • @gilsonconceicao5201
    @gilsonconceicao5201 Рік тому +2

    Mano, quanto estresse eu passei pra aprender e implementar redux! Implementei no meu projetinho pessoal e funcionou de primeira e muito fácil. Obrigado por compartilhar.

    • @joaobibiano
      @joaobibiano  Рік тому

      sem dúvidas ;) obrigado pelo feedback Gilson!

  • @thiagopereiradesouza2118
    @thiagopereiradesouza2118 Рік тому +1

    Fantastico man. vou começar a usar hoje na empresa e vim procurar mais sobre. Top demais o exemplo.

    • @joaobibiano
      @joaobibiano  Рік тому

      booooa thiago, depois conta como foi!

    • @Roberto-do5nh
      @Roberto-do5nh Рік тому

      lol quanta irresponsabilidade.

    • @joaobibiano
      @joaobibiano  Рік тому

      @@Roberto-do5nh tu não sabe se ele é o único dev da empresa, ou se ele é a empresa

    • @ThiagoPereira-yc8xw
      @ThiagoPereira-yc8xw Рік тому

      Sinceramente não entendi o pq do seu comentário? Qual seria a irresponsabilidade?

  • @imdevbutok
    @imdevbutok Рік тому +2

    Mano, que incrível isso.
    Nunca usei nenhum gerenciador de estado por ouvir que adiciona complexidade ao código, mas isso mudou minha visão.

  • @peniche7901
    @peniche7901 Рік тому +1

    Fascinado com o quão simples é de se usar! Melhor canal de dicas para devs que tem, não perco um! Ótimo conteúdo!

    • @joaobibiano
      @joaobibiano  Рік тому +1

      maravilhoso né? valeu pelo feedback!

    • @peniche7901
      @peniche7901 Рік тому

      @@joaobibiano cara o tanto que você já me salvou com seus vídeos não tá escrito!!!

  • @viniciusfernandes3165
    @viniciusfernandes3165 6 місяців тому

    Em uma aplicação escalável, como você sugere organizar os arquivos? Separar as requisições assincronias à API em um outro arquivo (services.ts)? um arquivo para os types?, etc

  • @LuizPauloCamargo
    @LuizPauloCamargo 2 місяці тому

    Legal demais. E a persistência do estado, como faz?

  • @saviodev777
    @saviodev777 Рік тому

    que vídeo daora cara, não sabia do subscribe do zustand, valeuu

    • @joaobibiano
      @joaobibiano  Рік тому

      Opa Savio, que bom que curtiu!! valeu

  • @paulo_riicardo
    @paulo_riicardo 17 днів тому

    Mano, muito top. Qual tema cê tá usando?

  • @Chiines
    @Chiines 17 днів тому

    Mano, que tema é esse? Vídeo sensacional

  • @Decooh
    @Decooh Рік тому

    Coisaaa linda cara. Muito obrigado pela dica ❤

  • @lucaslessapacheco8487
    @lucaslessapacheco8487 Рік тому +2

    muito bom, obrigado!

  • @thiagocainelli_
    @thiagocainelli_ Рік тому +1

    Perfeito!

  • @hallexabreu
    @hallexabreu 8 місяців тому

    Incrível, parabéns!

  • @acmedis
    @acmedis Рік тому

    Parabéns João, muito top, conteúdo excelente!

  • @CaiqueMoraes93
    @CaiqueMoraes93 Рік тому +1

    Qual é o tema que você usa no VS Code?

  • @DuduHaupt
    @DuduHaupt 7 місяців тому

    como fica usando isso em varios lugares, por exemplo montar um state pra cada pagina, onde tenho umas 20 paginas que carregam 500 registros grandes? ele não fica armazenando em cache mesmo as que não estão sendo mais exibidas? isso não pode ser um problema?

  • @cosmo-rodrigues
    @cosmo-rodrigues 11 місяців тому

    Sensacional. Parabéns!

  • @Snybool
    @Snybool 8 місяців тому

    No 10:46 poderia ter desestruturado diretamente e não o fez, fiquei na dúvida agora de fizer assim ele renderiza porra toda amanhã vou tentar.

  • @Snybool
    @Snybool 8 місяців тому

    Ele tbm menciona que zustand pode ser usado na camada mais pura da aplicação e usou de exemplo a configuração do axios, faz tempo que queria ver uma solução que não fosse chamar mil fetchs no arquivo da sua página, algo mais próximo da svelte store. Amanhã definitivamente preciso testar kkkkk 😂

  • @davidhombe2313
    @davidhombe2313 11 місяців тому

    Top o vídeo!!!
    Qual programa usas para gravar os vídeos? Tem muita qualidade!

  • @jiualfa
    @jiualfa Місяць тому

    fiquei com uma duvida, e se eu tiver com duas views separadas? Uma com o botao de adicionar e na outra view a lista? como que faz pra escutar os eventos das views?

  • @wallacesilva6087
    @wallacesilva6087 Рік тому

    Show de bola hein! Parabéns pelo vídeo

    • @joaobibiano
      @joaobibiano  Рік тому

      fala wallace, valeu pelo comentário!! abraço

  • @lorddrumond3937
    @lorddrumond3937 5 місяців тому

    Opa mestre, essa 'Jornada Dev de Elite gratuita' ainda ta disponíevel?

  • @fheonix5
    @fheonix5 9 місяців тому

    Esse negocio de compilot dele sabe programar melhor que eu 😢😂

  • @JoseLucasestrela
    @JoseLucasestrela 3 місяці тому +1

    Excelente vídeo, já dá pra vender curso kkkkk

  • @matheusdeoliveira3303
    @matheusdeoliveira3303 Рік тому

    Sobre a parte de fazer pick do Store, é possível fazer também via desestruturação? Sem passar o state => xxxx dentro do parâmetro do hook

    • @joaobibiano
      @joaobibiano  Рік тому

      sim, mas ai você não vai ter o ganho de performance, porque o hook vai se ligar a store inteira.

  • @MARCOSSANTOS-z3v
    @MARCOSSANTOS-z3v 11 місяців тому

    Conteúdo muito bom, obrigado!
    O Zustand é realmente muito simples, mas tenho uma duvida sobre como compartilha o estado na arvore de componentes do React, sem um Provider, alguém sabe me dizer ?

    • @jhon-itallo
      @jhon-itallo 10 місяців тому

      se for com zustand ele já faz isso por padrão e fazer um provider no main da aplicação é opcional

  • @pablogoms
    @pablogoms Рік тому

    Bacana d+ viu, o zustand não precisa criar um hook e englobar toda a aplicação como fazemos na contextAPI?
    E outra, o zustand pode ser usado no angular?

    • @joaobibiano
      @joaobibiano  Рік тому +1

      Não precisa, é como eu disse, não precisa de providers ;)

    • @pablogoms
      @pablogoms Рік тому

      @@joaobibiano puts vei, que top viu

  • @PedroA.Wingert
    @PedroA.Wingert Рік тому

    Muito massa!

  • @riancarlosdev8849
    @riancarlosdev8849 Рік тому +5

    Calma que isso tá explodindo minha cabeça, é sério q toda a aplicação terá acesso ao state até mesmo sem nem um provider gente??? É isso??

  • @ectorcunha
    @ectorcunha Рік тому +1

    Sensacional

    • @joaobibiano
      @joaobibiano  Рік тому

      valeu pelo comentário @ectorcunha

  • @vinaciotm
    @vinaciotm Рік тому

    pra fazer isso com redux classico LEVA UMA ETERNIDADE e (TYPESCRIPT vira um inferno). Já com Redux Toolkit É MT MAIS RÁPIDO. Mas, essa forma aí do Zustand SUPEROU TODOS hahhah
    A parte que o Zustand atende fora de um PROVIDER, é literalmente DIVISOR de águas. To com esse problema no App, queria fazer um toggle DEBUG MODE para chamar API staging ou API prod.

    • @joaobibiano
      @joaobibiano  Рік тому +1

      @vinaciotm sem dúvidas, falou tudo. Redux clássico, com thunk, middlewares... santo Deus. Funciona? Funciona. Mas a dor é grande.

    • @nittosantos1525
      @nittosantos1525 Рік тому +1

      Cara falou e disse redux é muito verboso é desnecessário , o Toolkit veio pra dar uma sobrevida pra ele, mas nem de longe é minha opção mas infelizmente no mercado ainda é muito usado se não for o mais usado
      As vezes penso que a galera se matou tanto pra aprender que agora não querem ver outras soluções hahahahaha
      Trabalhei em apenas um projeto com zustand e foi muito pouco mas já adorava

    • @vinaciotm
      @vinaciotm Рік тому

      no novo projeto que to fazendo (App) vai ser zustand na veia. Vamos ver como vai ser.
      Eu vi que zustand tbm tem um "redux" interno, que tem devtools tb.
      Eu só fiquei no redux por conta do devtools. Se o zustand funciona com redux devtools já da pra usar REDUX mas NO zustand.
      se tivesse um ZUSTAND devtools pra react native seria perfeito
      @@nittosantos1525

  • @DyogenesBrennerMagalhaes
    @DyogenesBrennerMagalhaes Рік тому +1

    Desculpa a minha ignorância, mas o que é "pn dev"?

  • @gsilva877
    @gsilva877 Рік тому

    Ele é especifico do react ou da para usar com angular?

  • @paiva2
    @paiva2 Рік тому

    Isso de usar um state fora de um functional component é bizarro mesmo, fiquei surpreso

    • @joaobibiano
      @joaobibiano  Рік тому

      Isso é fantástico mesmo, sem dúvidas

  • @impervictor
    @impervictor 10 місяців тому

    Simples, mas por que as empresas não adotam tanto o Zustand? Ou é questão de tempo?

  • @Öyster_Boy
    @Öyster_Boy Рік тому +1

    Nunca usei redux, tem a context api.

  • @tiagoc9754
    @tiagoc9754 Рік тому

    Prefere o zustand ou jotai?

    • @joaobibiano
      @joaobibiano  Рік тому +1

      Fala Tiago, de forma geral, gosto do Zustand! O Jotai tem o foco em dividir o estado em pequenos pedaços e "atoms".

    • @tiagoc9754
      @tiagoc9754 Рік тому

      @@joaobibiano obrigado

  • @JonasDalethese
    @JonasDalethese Рік тому +1

    Dedo no like

  • @antoniocosta7565
    @antoniocosta7565 Рік тому

    Da pra usar com Vue?

  • @codigodelaboratorio
    @codigodelaboratorio Рік тому

    agora esta na hora de usar essa doença no meu game, demorei muito para abandonar o redux e parece que será de vez agora....

  • @FrancaBr.
    @FrancaBr. Рік тому

    Está usando github copilot ou outro?

  • @Roberto-do5nh
    @Roberto-do5nh Рік тому

    Cara isso não abre uma puta brecha de segurança na aplicação não ?

    • @joaobibiano
      @joaobibiano  Рік тому

      não, tudo que está no frontend é SEMPRE disponível para ataques, por isso que ali tu não deixa informação sensível

    • @Roberto-do5nh
      @Roberto-do5nh Рік тому

      @@joaobibiano Uma galera aqui em baixo comentando que passou a utilizar uma biblioteca que sabe lá deus quem está por trás, ou oque está no código e tudo isso só pela facilidade de implementação ?
      Tomem cuidado com as bibliotecas que vocês baixam em seus projetos, ainda mais se for projeto profissional...

    • @joaobibiano
      @joaobibiano  Рік тому +1

      @@Roberto-do5nh o código é open source, é só ir lá conferir

  • @bruxoleonardo
    @bruxoleonardo 2 місяці тому

    Toda hora tem coisa nova 🤦‍♂️

  • @CarlosMansilha
    @CarlosMansilha Рік тому

    epoca boa era epoca do aspx, era so mandar tudo pra view e ser feliz kkkk

    • @joaobibiano
      @joaobibiano  Рік тому

      hahahahah site pesadao mas funcional

    • @CarlosMansilha
      @CarlosMansilha Рік тому

      @@joaobibiano acho q hj em dia n ia ser muito pesado, pois temos tecnologi 10x melhor. Pra crud tava otimo kk o problema é a essar pelo mobile kk

  • @henriquezolini
    @henriquezolini 10 місяців тому +1

    Concordo que o Zustand é uma ferramenta bacana, mas acredito que o Redux ainda tem seu lugar, principalmente devido à robustez das Redux DevTools. A Zustand tem um protótipo disso, mas sinceramente é um lixo. Pode chegar um dia que eles alcancem o mesmo nível de maturidade da ferramenta, mas enquanto isso não se enganem, em um projeto grande seria loucura trocar para uma ferramenta ainda tão imatura.