Me siga nas redes sociais e acompanhe meus projetos: linktr.ee/cris... Aula base do projeto: • ANGULAR NGRX MASTERCLA... Repo do projeto atualizado: github.com/cri...
Muito bom, bem didático. Depois que migrei de vue e react para angular, comecei a usar muito o rxjs e tbm singleton para compartilhar informações entre componentes. Fica bem organizado e fácil de entender
RxJS é massa demais! Já uso tem um tempo mas quando vi que falaria desse assunto não poderia deixar de assistir pra prestigiar sua didática que usa de um vocabulário tão espontâneo 😂
Ngrx é muito legal, mas muito complexo. Por isso estou trabalhando com ngxs ele é maravilhoso e muito mais simplificado e de mais fácil entendimento, juntando ele com a arquitetura limpa no angular se torna uma combinação perfeita. Trás uma aula pra gente Crisss 🙏🏽
Ótimo vídeo! Minha opinião é que as bibliotecas tem propositos diferentes, o RxJs pode ser utilizado em qualquer app js para se ter reatividade, enquanto NgRx surgiu para realmente resolver um problema de gerenciamento de estado do angular, inclusive no vídeo você manipulou apenas a variável livro, seria bom tentar fazer todo um contexto de uma página real, que seria manipular erros e diversas outras variáveis que possam estar no seu componente, e depois tentar fazer um 'select' de apenas uma fatia dessas variáveis, fazer isso com rxjs vai virar uma 'bagunça'. Por outro lado quando entendemos a arquitetura do NgRx tudo fica muito simples e extremamente bem definido, o ideal é entender se a nossa aplicação realmente precisa de um gerenciamento de estado global ou não.
Discordo, seria muito simples simular o comportamente do Select com Um Map do Rxjs, inclusive, gerenciamento de erro, ficaria super simples de ser gerenciado usando o CatchError... Tudo isso nativo e sendo gerenciado pelo pipe async...
Para uma aplicação pequena eu acho interessante essa abordagem. Mas quando vc está trabalhando com um app grande ou ainda com microfrontend é bem mais fácil deixar o NGRX gerenciar os states para você. Esse filter que você fez no seu serviço devia estar no BE essa lógica.
De todas as tecnologias que ja trabalhei Angular é minha favorita de longe, e mano tuas aulas são fora da curva de boas, ja aprendi coisa demais contigo. Simples, didatico e engraçado, tudo oq um dev precisa. Obg
หลายเดือนก่อน +1
Rxjs e uma service o mundo é nosso Cris, aula massa demaisss!
So um ponto, a instancia/escopo de um singleton é definido pelo seu provider, por padrão a nível de aplicação (providedIn: 'root'), mas existe a possibilidade de vc definir essa instancia a nivel de modulo ou componente.
Eu sempre disse isso... ano passado entrei em uma empresa que trabalhavam com NgRx e disse que era desvantagem mas cagaram. Dale boilerplate, saí da empresa no mês seguinte e entrei onde queria a um tempo.
RXJS e maravilhoso, aprendi a usar estado com ele. aqui poderia fazer um conteúdo sobre tratar TS? tipo como fugir do any, e em que momento a gente tipa? abraços.
Eu sempre implementei estados com o RxJS, até tenho uma noção do NgRx, mas NUNCA vi necessidade de usar isso. Pq eu deixaria de usar uma ferramenta "nativa" que nos dá todos os recursos (e muito mais) pra usar NgRx? Aqui me parece que a galera do NgRx teve o ego ferido pela galera do RxJS.
Ótimo vídeo. RXJS sempre foi o suficiente pra mim, mas gostaria de ver um caso em que o NGRX brilhasse. Tu tem algum vídeo em que o NGRX se torna vantajoso?
Mto bom o vídeo mano! Não curto o NGRX também. Acompanhei um outro tutorial e fiz toda essa implementação de gerenciamento de estado com Signals. Achei bem dahora. Tenta usar o # no lugar de private. Saiu em alguma das releases aí do Typescript. Economiza um pouquinho kkkkkkkk Abraços!
Por isso mostrei com o pipe async, mas mano, voce me deu uma ideia, criar agora um conteudo transformando isso em signals sauhhuashusauhsa, vai ser mais remover código que adicionar eu imagino uhashusahu
Fala Cris! Estou tentando implementar o rxjs no meu projeto e o vídeo me ajudou muito! No vídeo vc utilizou dois services de livro como exemplo (livro.service e livro-state.service)... gostaria de saber se em um projeto real, vc realmente usaria 2 services como foi feito no exemplo, ou teria apenas um service manipulando os estados e gerenciando as chamadas a api.
Grande Criss... Muito bom... A gente consegue esse mesmo resultado utilizado signals para o estado (signal ≈ BehaviorSubject, computed ≈ listenChanges). A gente pode, mas será que a gente deve? O que acha dessa abordagem?
Você acha interessante ter um serviço facade para o componente não manipular diretamente o state? O componente usaria o facade e o facade mexeria no state.
Conteúdo muito bom, obrigado por compartilhar. Atualmente, utilizo o NgRX nas aplicações que atuo e confesso que é realmente moroso criar toda essa estrutura e trabalhar em cima dela. Porém, essa segunda abordagem é muito simples e intuitiva e com isso, geram algumas dúvidas e adoraria entender sua percepção sobre elas: 1 - Com a primeira abordagem, é mais simples analisar utilizando o redux devtools. Como você faz para lidar com isso na segunda abordagem? 2 - Em uma aplicação onde teremos compartilhamento de dados, utilizando a primeira abordagem podemos selecionar "pedaços" de conteúdo simplesmente com o selector, nesse caso, não seria um pouco mais viável em aplicações grandes e complexas? 3 - Há algum ganho de performance na segunda abordagem? Visto que na primeira você executaria mais "comandos" para determinados resultados. Por fim, uma pergunta tola: Como você estrutura hoje suas aplicacões? Venho pesquinsando e acho conteúdo diversos com padrões diferentes. Tento me aproximar ao máximo do padrão que a própria doc do Angular disponibiliza mas as vezes percebo um certo gargalo. Por exemplo, as actions ficam a nível de componente ou de módulo? Se tiver um tempinho e puder responder ou indicar algum material, ficarei muito grato
1 - Próprio Debug ou pelo Angular DevTools 2 - A ideia é ter uma services para cada "pedaço", e você usar apenas as necessárias no seu componente. Então de certa forma ao usar, você já está "selecionando". 3 - Sim, como cada "pedaço" é salvo em sua própria service, não é mais necessário gerenciar um "objeto gigante" de todo state da sua aplicação. Pergunta tola: A ideia do Angular é que sempre a regra de negócio fique nas Services, assim é possível compartilha-lá o máximo possível entre os componentes.
Obrigado pelas respostas... É isso memso mano! Sobre o selector, a ideia é dividir os contextos entre services, e caso queira selecionar mais alguma coisa, é só usar o Map do RXJS
o comando ng new respeita a versão da CLI mano, se quiser executar em uma versão antiga, minha dica é instalar a CLI localmente na versao que desenha e dentro da pasta instalada, usar o ng new
o cara ensina gerenciamento de estado, RxJs, POO e alguns Design Patterns e tudo num só vídeo, é uma lenda mesmo hahaha
Muito bom, bem didático. Depois que migrei de vue e react para angular, comecei a usar muito o rxjs e tbm singleton para compartilhar informações entre componentes. Fica bem organizado e fácil de entender
O cara realmente sabe muito, fala das coisa de um jeito muito foda e bebe agua em garrafa de suco de uva de vidro, muito sabio.
RxJS é massa demais! Já uso tem um tempo mas quando vi que falaria desse assunto não poderia deixar de assistir pra prestigiar sua didática que usa de um vocabulário tão espontâneo 😂
Ngrx é muito legal, mas muito complexo. Por isso estou trabalhando com ngxs ele é maravilhoso e muito mais simplificado e de mais fácil entendimento, juntando ele com a arquitetura limpa no angular se torna uma combinação perfeita. Trás uma aula pra gente Crisss 🙏🏽
Ótimo vídeo!
Minha opinião é que as bibliotecas tem propositos diferentes, o RxJs pode ser utilizado em qualquer app js para se ter reatividade, enquanto NgRx surgiu para realmente resolver um problema de gerenciamento de estado do angular, inclusive no vídeo você manipulou apenas a variável livro, seria bom tentar fazer todo um contexto de uma página real, que seria manipular erros e diversas outras variáveis que possam estar no seu componente, e depois tentar fazer um 'select' de apenas uma fatia dessas variáveis, fazer isso com rxjs vai virar uma 'bagunça'. Por outro lado quando entendemos a arquitetura do NgRx tudo fica muito simples e extremamente bem definido, o ideal é entender se a nossa aplicação realmente precisa de um gerenciamento de estado global ou não.
Discordo, seria muito simples simular o comportamente do Select com Um Map do Rxjs, inclusive, gerenciamento de erro, ficaria super simples de ser gerenciado usando o CatchError... Tudo isso nativo e sendo gerenciado pelo pipe async...
Boa cara! No outro vídeo de NgRx realmente fiquei com esse questionamento de que parecia mais fácil usar o NxJs. Esclarecido!
Para uma aplicação pequena eu acho interessante essa abordagem. Mas quando vc está trabalhando com um app grande ou ainda com microfrontend é bem mais fácil deixar o NGRX gerenciar os states para você.
Esse filter que você fez no seu serviço devia estar no BE essa lógica.
@@flavioarantesdoamorimbarce95 discordo totalmente sobre a parte do ngrx, sobre o filter, foi só um exemplo 🙃
De todas as tecnologias que ja trabalhei Angular é minha favorita de longe, e mano tuas aulas são fora da curva de boas, ja aprendi coisa demais contigo. Simples, didatico e engraçado, tudo oq um dev precisa. Obg
Rxjs e uma service o mundo é nosso Cris, aula massa demaisss!
Po mais uma aula sensacional, Cris. Obrigado mais uma vez pelo conhecimento passado cara. Bom demaais
So um ponto, a instancia/escopo de um singleton é definido pelo seu provider, por padrão a nível de aplicação (providedIn: 'root'), mas existe a possibilidade de vc definir essa instancia a nivel de modulo ou componente.
Boaaa mano! Obrigado por acrescentar detalhes 👏🏻👏🏻👏🏻
Parabéns Cristian, gosto muito dos seus vídeos.
Parabéns Cristian, poderia fazer um vídeo usando signals?
Teremos em mano!
Eu sempre disse isso... ano passado entrei em uma empresa que trabalhavam com NgRx e disse que era desvantagem mas cagaram. Dale boilerplate, saí da empresa no mês seguinte e entrei onde queria a um tempo.
Excelente aula meu querido. Eu tbm prefiro usar RxJS do que NgRx.
Eu basicamente trabalho assim no Angular tbm, mto melhor!! Vídeo top demais.
Dahora mano, isso ajuda muito a gente a não ficar pirando em NGRX , usa essa p.... só se precisar mesmo. Sempre vendo os videos!
Exatamente mano, vlw demais pelo comentário!
Muito bom. Eu usei muito o Ngxs, devido a um projeto em que estava. Sinceramente eu gostei e parece ser mais simples que o Ngrx 😅.
Muito massa Cristian!
E aqui estamos
Show! explicação ficou clara.
RXJS e maravilhoso, aprendi a usar estado com ele.
aqui poderia fazer um conteúdo sobre tratar TS? tipo como fugir do any, e em que momento a gente tipa?
abraços.
Mano, a gente tipa o tempo todo... Dificilmente teremos situações onde o any é indicado
@@cristianwilliamdev Se puder faze rum video sobre, acho que e uma duvida de muita gente, o uso correto de TS?. obrigado pela resposta,
vc eh bizarro de bom dog!
Eu sempre implementei estados com o RxJS, até tenho uma noção do NgRx, mas NUNCA vi necessidade de usar isso.
Pq eu deixaria de usar uma ferramenta "nativa" que nos dá todos os recursos (e muito mais) pra usar NgRx?
Aqui me parece que a galera do NgRx teve o ego ferido pela galera do RxJS.
Haahahah você nem tá ligado da galera que vem chamar eu pra tentar convencer que ngrx é útil sim hahahah
Vídeo muito bom
Só conteúdo de qualidade
Ótimo vídeo. RXJS sempre foi o suficiente pra mim, mas gostaria de ver um caso em que o NGRX brilhasse. Tu tem algum vídeo em que o NGRX se torna vantajoso?
Up
Cara, pra mandar a real, em todo meu tempo de exp, se tu souber usar o RXJS dificilmente vai querer usar o NGRX... Pra mim é mais questão de opinião
Mto bom o vídeo mano!
Não curto o NGRX também. Acompanhei um outro tutorial e fiz toda essa implementação de gerenciamento de estado com Signals. Achei bem dahora.
Tenta usar o # no lugar de private. Saiu em alguma das releases aí do Typescript. Economiza um pouquinho kkkkkkkk
Abraços!
Melhor que o RxJS e NgRx é usar signals, porque se você se esquecer de desinscrever do observer ele vai consumir recursos em background.
Por isso mostrei com o pipe async, mas mano, voce me deu uma ideia, criar agora um conteudo transformando isso em signals sauhhuashusauhsa, vai ser mais remover código que adicionar eu imagino uhashusahu
Video top, ajudou demais no uso RxJs!
foda pra caralho. Vlw demais pelo vídeo
Ótimo video mano, em 90% dos casos prefiro usar RxJs do que o NGRX ou NGXS, principlamente por causa dos testes.
Nos projetos em angular que trabalhei, nenhum teve a necessidade de utilizar ngrx
Fala Cris! Estou tentando implementar o rxjs no meu projeto e o vídeo me ajudou muito! No vídeo vc utilizou dois services de livro como exemplo (livro.service e livro-state.service)... gostaria de saber se em um projeto real, vc realmente usaria 2 services como foi feito no exemplo, ou teria apenas um service manipulando os estados e gerenciando as chamadas a api.
@@brenner8664 uma service já seria o suficiente manow, tmj 👏🏻🤘🏻
muito legal ...parabéns!!
Grande Criss... Muito bom... A gente consegue esse mesmo resultado utilizado signals para o estado (signal ≈ BehaviorSubject, computed ≈ listenChanges).
A gente pode, mas será que a gente deve?
O que acha dessa abordagem?
Acho perfeito a ideia mano, seria um próximo passo brother 👏🏻👏🏻
Like no video, sempre
Bacana cara, show. Mais agora com versões mais novas, você não acha melhor manter o estado via Signals?
Daria também sem problemas mano
É que por signals ser muito novo ainda no Angular, decidi fazer com RXJS pois há mais projetos usando, da pra trazer no dia a dia
brabo demais!!
comecei a acompanhar seu conteúdo aqui no youtube, tem alguma comunidade pro pessoal se comunicar?
Ainda não mano, parece ser uma boa em hahaha
@@cristianwilliamdev olha aí, ia ser top kkkk
Você acha interessante ter um serviço facade para o componente não manipular diretamente o state? O componente usaria o facade e o facade mexeria no state.
Não entendi qual seria o o problema de um componente chamar uma service diretamente…
@@cristianwilliamdev Não acho um problema. Só vi alguns exemplos com essa separação de responsabilidades.
Parabéns pela aula! Uma dúvida, você acha que esse mesmo modelo pode ser usado em projetos de grande porte?
Totalmente, isso ficaria muito mais simples de dar manutenção...
Conteúdo muito bom, obrigado por compartilhar.
Atualmente, utilizo o NgRX nas aplicações que atuo e confesso que é realmente moroso criar toda essa estrutura e trabalhar em cima dela. Porém, essa segunda abordagem é muito simples e intuitiva e com isso, geram algumas dúvidas e adoraria entender sua percepção sobre elas:
1 - Com a primeira abordagem, é mais simples analisar utilizando o redux devtools. Como você faz para lidar com isso na segunda abordagem?
2 - Em uma aplicação onde teremos compartilhamento de dados, utilizando a primeira abordagem podemos selecionar "pedaços" de conteúdo simplesmente com o selector, nesse caso, não seria um pouco mais viável em aplicações grandes e complexas?
3 - Há algum ganho de performance na segunda abordagem? Visto que na primeira você executaria mais "comandos" para determinados resultados.
Por fim, uma pergunta tola:
Como você estrutura hoje suas aplicacões? Venho pesquinsando e acho conteúdo diversos com padrões diferentes. Tento me aproximar ao máximo do padrão que a própria doc do Angular disponibiliza mas as vezes percebo um certo gargalo. Por exemplo, as actions ficam a nível de componente ou de módulo?
Se tiver um tempinho e puder responder ou indicar algum material, ficarei muito grato
1 - Próprio Debug ou pelo Angular DevTools
2 - A ideia é ter uma services para cada "pedaço", e você usar apenas as necessárias no seu componente. Então de certa forma ao usar, você já está "selecionando".
3 - Sim, como cada "pedaço" é salvo em sua própria service, não é mais necessário gerenciar um "objeto gigante" de todo state da sua aplicação.
Pergunta tola: A ideia do Angular é que sempre a regra de negócio fique nas Services, assim é possível compartilha-lá o máximo possível entre os componentes.
Obrigado pelas respostas... É isso memso mano!
Sobre o selector, a ideia é dividir os contextos entre services, e caso queira selecionar mais alguma coisa, é só usar o Map do RXJS
🔥🔥🔥
Comentariozinho do engajamento
O cara é o Padre Fábio de Melo da programação 😂
Como eu faço pra usar o Angular no Framework7.
o comando ng new respeita a versão da CLI mano, se quiser executar em uma versão antiga, minha dica é instalar a CLI localmente na versao que desenha e dentro da pasta instalada, usar o ng new
Tu é pica mesmo mano!
bota uma treta ai no comentário kkkkk
fala Cristian , qual é o app que voce usa p fazer a anotaçao na tela?
Screen Brush brow