Design Patterns no ReactJS? Entenda na prática e não dependa mais de libs como o Axios

  Рет қаралды 9,508

Dev Junior Alves

Dev Junior Alves

Күн бұрын

Пікірлер: 49
@devjunioralves
@devjunioralves 8 ай бұрын
👉 Livros que recomendo pra você: Lógica de Programação e Algoritmos com JavaScript: amzn.to/48Cj65Z JavaScript: O Guia Definitivo: amzn.to/48jh9vp Como ser um programador melhor amzn.to/48WYGVj Arquitetura Limpa (Clean Arch) amzn.to/3Viqw7v Clean Code amzn.to/3hHXVKY Estruturas de dados e algoritmos com JavaScript amzn.to/49FOzFd --- ✅ Segue lá no Instagram: instagram.com/devjunioralves/ ✅ Nossa comunidade no Discord: discord.com/invite/bVxW4Dhgrf
@LimaGabriel1
@LimaGabriel1 8 ай бұрын
;-;
@EulerAlvarenga1
@EulerAlvarenga1 8 ай бұрын
adoraria saber sobre esses erros customizados!!!
@devjunioralves
@devjunioralves 8 ай бұрын
Opa, vou trazer sim man. Valeu demais por comentar!
@Paulo-cf4mh
@Paulo-cf4mh 8 ай бұрын
Parabéns pelo trabalho feito Júnior, um conteúdo de altíssimo nível que tem muito pouco para quem é front-end, tem me ajudado a ter uma visão muito além do que eu imaginava.
@eduardobertozi8506
@eduardobertozi8506 8 ай бұрын
Muito show esse conteúdo em Junior! Até pouco tempo atrás só se achava essas informações em canais ou sites gringos. Obrigado!!!
@devjunioralves
@devjunioralves 8 ай бұрын
De fato, conteúdo mais avançado e em português é difícil. Bora tentar mudar isso 👊
@eduardobertozi8506
@eduardobertozi8506 8 ай бұрын
@@devjunioralves 👏
@kauazinho4153
@kauazinho4153 8 ай бұрын
É possível ativar o Code Lens nativamente no VS Code para JS e TS. Isso mostra qual classe esta sendo usada por outra
@meguinha8103
@meguinha8103 8 ай бұрын
Eu tenho feito uma abordagem parecida mas com usecase no caso eu tenho um service atravéz de dependência ele consome endpoints que são do tipo httprequestusecase aí essa class é abstrata meu caso de uso implementa ela e eu injeto e apenas chamo o execute no service respeitando o contrato mantendo a responsabilidade única padronizando com classe abstrata e invertendo a dependência se alguém quiser ver um exemplo eu posso mostrar fica bem organizado e separa o código da implementação de fato facilitando os testes
@doasalah
@doasalah 8 ай бұрын
Se puder, compartilha o repo
@devjunioralves
@devjunioralves 8 ай бұрын
Que show, se puder compartilhar, seria muito bom. Não sei se já esta no nosso Discord, se ainda não e quiser entrar, o link esta no comentário fixado.
@WallisonMouraDev
@WallisonMouraDev 8 ай бұрын
Top, top e top, Parabéns pelo conteúdo camarada. Tem me ajudado bastante, e com certeza vai agregar muito.
@ruanzassen
@ruanzassen 8 ай бұрын
Muito bom! seus vídeos tem me ajudado bastante! Continue
@devjunioralves
@devjunioralves 8 ай бұрын
Que show Ruan, fico feliz demais em saber disso!
@Yuri-yu3pp
@Yuri-yu3pp 8 ай бұрын
Viídeo ótimo, traz mais sempre! Mas uma dúvida: supondo que eu tenha já uma aplicação robusta com vários locais chamando um adapter do axios e eu queria mudar todos para o fetch. Eu vou ter q sair alterando arquivo por arquivo, certo? Não seria ideal ter mais uma camada que vai lidar com toda request e eu chame ela em cada ponto que precisar? Assim, caso eu mude tudo para fetch, vou alterar no principal, e o resto que usa esse metodo para bater na api, nem vai saber que mudou. E caso eu queria manter o axios em alguns locais específicos, beleza, eu altero só neles para chamar o adapter do axios e deixo o principal chamando o fetch ou qualquer um q seja.
@IgorAlves15
@IgorAlves15 8 ай бұрын
Eu faria isso também, teria um caso de uso que recebe um serviço como argumento, e independente de onde eu usar esse caso de uso ele nem sabe quem é que está implementando, se é com axios, com fetch, em memória... E se usa em várias lugares injetaria via context api, para ter centralizado esse serviço.
@devjunioralves
@devjunioralves 8 ай бұрын
Excelente pergunta, tu pode centralizar isso (que é o que eu faço) usando outro pattern, o Factory, daí tu usa essa Factory e quando quiser mudar, muda nela e o restante nem fica sabendo.
@EliabyTeixeira
@EliabyTeixeira 8 ай бұрын
Muito bom cara... parabéns pelo conteúdo!
@sombrakey
@sombrakey 8 ай бұрын
Muito bom! Ter uma repo para poder olhar o código de perto?
@emersontrindade299
@emersontrindade299 8 ай бұрын
Muito top Junior! Seria tbm interessante abordar como fazer para tratar erros das requisiçoes e mostrar mensagens em Toasts, tipo, qual libe vc usa se já trata eles de forma global e tals...
@GabrielRibeiro-xg2pr
@GabrielRibeiro-xg2pr 8 ай бұрын
Muito Interessante essa maneira de fazer fetch. Poderia fazer um vídeo ensinando a testar isso agora? Um abraço!!
@felipepasqua5738
@felipepasqua5738 8 ай бұрын
Uma duvida, como vc estuda e fica sabendo dessas patterns e coisas mais avançadas ?
@devjunioralves
@devjunioralves 8 ай бұрын
A grande parte de livros, daí é necessário fazer algumas adaptações (em alguns casos) pois a grande maioria foi pensada para POO, daí em abordagens funcionais, muda algumas coisas. Tem o canal do Rodrigo Branas e do Manguinho que recomendo muito, caso ainda não conheça. Tem uma live aqui no canal com o Branas inclusive.
@br-lemes
@br-lemes 8 ай бұрын
Esses últimos três vídeos são ótimos, eu não trabalho com equipe mais experiente que eu. Então tenho muita dificuldade de entender a utilidade desses padrões e práticas. E ficou bem explicado o como, quando e porque nesses vídeos. Mas me perco, não lembro o que está em que parte do vídeo... não tem um repositório desse código?
@icarokiilermelo
@icarokiilermelo 8 ай бұрын
Brabo Junior!
@MaxwellKenned
@MaxwellKenned 8 ай бұрын
que conteudo top. Thanks for sharing.
@brunomenegidio5842
@brunomenegidio5842 8 ай бұрын
Pra não ter que instanciar a classe em todos os componentes e passar manualmente, vc resolveria isso com factory?
@devjunioralves
@devjunioralves 8 ай бұрын
Exatamente Bruno!
@Evandrooouuu
@Evandrooouuu 8 ай бұрын
Sensacional cara.
@doasalah
@doasalah 8 ай бұрын
Junior muito bom video, gostaria de ver tbm tratamento de erros ao fazer requisições
@devjunioralves
@devjunioralves 8 ай бұрын
Sensacional, vou trazer sim conteúdo sobre erros customizados!
@gbrlcardozo
@gbrlcardozo 8 ай бұрын
obrigada
@cleiton22ify
@cleiton22ify Ай бұрын
nao entendi como usar, no codigo vc ja tem um componente pronto pra receber ele, como faz se nao tiver esse components , como ele é consumido?
@EulerAlvarenga1
@EulerAlvarenga1 8 ай бұрын
uma dúvida cruel… como eu faço pra não ter que passar isso para todo component? Teria alguma forma?
@devjunioralves
@devjunioralves 8 ай бұрын
Sim, tu pode utilizar outro Pattern, Factory, onde retorna um HTTPClient e usa essa Factory na aplicação, daí quando quiser/precisar mudar, basta mudar na Factory e o restante da aplicação nem fica sabendo.
@EulerAlvarenga1
@EulerAlvarenga1 8 ай бұрын
@@devjunioralves essas aulas estão abrindo minha mente! Sensacional 🙌 muito obrigado
@versaleyoutubevanced8647
@versaleyoutubevanced8647 8 ай бұрын
agora eu pergunto aos senhores, quando foi a ultima vez que vocês precisaram trocar a lib de fetch?
@eduardobertozi8506
@eduardobertozi8506 8 ай бұрын
kkkkk boa. Mas embora seja um exemplo com algo em que dificilmente teremos essa preocupação, tem muitos casos de uso em que desacoplar dessa forma é interessantíssimo. No frontend é mais difícil entender o propósito, pq são recursos explorados muito mais no backend. Quem está lendo ou já leu os livros do Uncle Bob vai entender bem como é importante utilizar bons padrões e construir um código limpo.
@devjunioralves
@devjunioralves 8 ай бұрын
Trocar, talvez não. Agora já teve problema pq a lib atualizou e quebrou seu projeto? Isso aconteceu com o próprio Axios um tempo atrás, quando ele foi para versão 1.x. E outro ponto, que pra mim é o mais importante, como fica os testes quando tu ta acoplado à uma lib? É simples de ser implementado?
@maykelmatheusdias3446
@maykelmatheusdias3446 8 ай бұрын
Uma sugestão talvez seria usar ao invés de any para o exemplo de HttpClient o tipo unknown, acho mais semantico nesse caso! Parabéns pelo contéudo!
@Jhean_Perdido
@Jhean_Perdido 8 ай бұрын
🎉🎉🎉
@devjunioralves
@devjunioralves 8 ай бұрын
🚀🚀🚀
@pedrobenicio4955
@pedrobenicio4955 8 ай бұрын
acho que sou a única pessoa da terra que nao gosta de usar axios, mas sim o fetch normal msm....
@devjunioralves
@devjunioralves 8 ай бұрын
Kkkkk Tem muita gente que usa o fetch, mas de fato, o axios traz muitas funcionalidades, porém, o importante é não depender diretamente de nenhum deles.
@caueoliveira6143
@caueoliveira6143 8 ай бұрын
Com certeza você não é o único. Tenho aversão ao axios. É tipo um ranço mesmo. KKK.
@br-lemes
@br-lemes 8 ай бұрын
Também não gosto do axios, uso o fetch.
@mouzinhoraimundo5060
@mouzinhoraimundo5060 8 ай бұрын
top
O Anti-Pattern mais comum no ReactJS (e como evitá-lo)
15:28
Dev Junior Alves
Рет қаралды 9 М.
When you have a very capricious child 😂😘👍
00:16
Like Asiya
Рет қаралды 18 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
Clean Architecture in Next.js: A Complete Implementation Guide
53:07
Arquitetura Front-end: Aplicando Arquitetura MVVM no Front-end (React.js)
10:58
TUDO sobre o NOVO hook do ReactJS
16:32
Dev Junior Alves
Рет қаралды 15 М.
Applying clean architecture to my Next.js project
20:15
Web Dev Cody
Рет қаралды 78 М.
Context API vs Zustand - Guia de State Management no ReactJS
30:36
Dev Junior Alves
Рет қаралды 13 М.
Custom Hooks in React (Design Patterns)
12:56
Cosden Solutions
Рет қаралды 56 М.
O ERRO mais comum no React (você já fez isso)
13:26
Rocketseat
Рет қаралды 128 М.
O que são Design Patterns?
12:18
DevMedia
Рет қаралды 75 М.
When you have a very capricious child 😂😘👍
00:16
Like Asiya
Рет қаралды 18 МЛН