muito bom! acho que o principal da extração de código é o ganho nos testes... galera tem muita dificuldade em testar, e com isso, a gente deixa as classes responsáveis apenas por um assunto, facilitando e muito o teste!
Que vídeo maravilhoso! Acharia sensacional se continuasse com patterns, e eu conhecia o common strategy, mas essa visão moderna dele, incrível! Parabens!
Muito bom! Ótimo conteúdo! Partiu para o próximo padrão! São mais de 24 padrões do GoF!! Já vou indexar aqui este vídeo e criar um script de automação para gerar os códigos com base na sua implementação aqui!! O próximo seria interessante um dos padrões seguintes: Proxy Pattern Observer Pattern Chain of Responsibility Pattern E gratidão por compartilhar seu conhecimento!
Eu já vi solução parecida com o common strategy que você explicou, mas o que você ensinou na parte moderna deixou o código mais lindo. Obrigado por mais essa aula!
Rapaz!!! Que vídeo bom. Recentemente fiz o uso do Strategy em uma task no trabalho, mas fiz do jeito comum. Queria ter conhecido essa abordagem com ENUMS antes!
Eu amo os seus videos Giuliana, sério eu estou cansado da galera que fala que vai fazer um conteúdo xyz, entretanto, ficam no raso para atingir uma grande massa. Eu só tenho que parabeniza-lá pelo conteúdo de qualidade que vem desempenhando!!
Giuliana, seu canal e conteúdo é de muitíssima qualidade! Me tornei membro. Adoraria se você pudesse fazer algum dia um tutorial sobre o spring web flux.
Oi giuliana, parabéns pelo conteúdo, muito bom! Se me permite aqui vai uma sugestão, seria legal se tivesse mostrado a outra abordagem do strategy com enum, que seria deixar a implementação dos métodos diretamente nos enums, particularmente eu prefiro essa, e acredito que é mais familiar para os devs, feliz ano novo e muitas conquistas para você 🎉
Olá, Giulia. Primeiramente, parabéns pelo vídeo. Ficou bem fácil de entender o caso de uso. Fiquei com 1 dúvida: Vamos supor que eu tenho 2 marcas de carros (MarcaA e MarcaB) que, inicialmente, consultam o preço dos veículos utilizando o mesmo algoritmo e regras de negócio. Esse método eu chamo de "ConsultarPreço". Se eu criar uma classe abstrata com esse comportamento comum, ex: "ConsultaPreçoBaseStrategy", e 2 classes que herdam dela, "MarcaAConsultaPreçoStrategy" e "MarcaBConsultaPreçoStrategy", isso também seria um exemplo de uso do pattern? Caso a MarcaB precise aplicar uma regra de negócio diferente da MarcaA, eu daria um override no método sem precisar alterar o comportamento da MarcaA No seu exemplo, cada método de pagamento tem o seu próprio algoritmo. No meu caso, as duas marcas utilizam o mesmo algoritmo inicialmente, mas podem mudar no futuro. Não se se fui claro rsrs mas é que passei por isso no trabalho e seu vídeo me fez lembrar da dúvida. Mais uma vez, obrigado pelo conteúdo e um Feliz 2025 para você! 🎉🎉
Obrigada pelo feedback! Sobre sua dúvida, sim, esse também seria um exemplo de uso do pattern. A diferença é que nesse caso você usa a herança para compartilhar um comportamento também. O problema é que usando classes a gente não consegue ter "herança múltipla" no Java. Uma alternativa, não sei se vc conhece, é adicionar o métodos nas interfaces mesmo, algo permitido a partir do Java 8 através de default methods.
Opa, no banco em que trabalho usamos MUITO camel e bati cabeça pra aprender pq realmente tem muito pouco material. Depois de meses posso dizer que sei Camel muito bem e acho que seria incrível se a Giu fizesse um vídeo sobre. Principalmente abordando o contexto do camel Exchange, processors, toD e tratamento de erros com o onException.
muito bom! acho que o principal da extração de código é o ganho nos testes... galera tem muita dificuldade em testar, e com isso, a gente deixa as classes responsáveis apenas por um assunto, facilitando e muito o teste!
Que vídeo maravilhoso! Acharia sensacional se continuasse com patterns, e eu conhecia o common strategy, mas essa visão moderna dele, incrível! Parabens!
Que bom que curtiu! 🤩
Top demais.
Muito bom!
Ótimo conteúdo!
Partiu para o próximo padrão!
São mais de 24 padrões do GoF!!
Já vou indexar aqui este vídeo e criar um script de automação para gerar os códigos com base na sua implementação aqui!!
O próximo seria interessante um dos padrões seguintes:
Proxy Pattern
Observer Pattern
Chain of Responsibility Pattern
E gratidão por compartilhar seu conhecimento!
Que massa, vlw demais! O Proxy eu tenho vídeo no canal na Playlist de Java Avançado, os outros vou trazer sim, com certeza!
Lindo!
Ótimo conteúdo! Parabéns!
sensacional!
Valeu!
Obrigada pelo apoio! 🤗
@@giulianabezerra muito bons seus vídeos, eu os assisto sempre!
Muito top, não conhecia essa abordagem com enums, parabéns pelo conteúdo.
Valeu, fico feliz que tenha gostado!
Top demais
Ótima explicação! Obrigado pelo conteúdo.
Que bom que foi útil! 🙏
Eu já vi solução parecida com o common strategy que você explicou, mas o que você ensinou na parte moderna deixou o código mais lindo.
Obrigado por mais essa aula!
Que bom que curtiu! 😁
Como sempre, conteúdo top demais. Esse canal é um achado.
Bora para mais um excelente conteudo da Srta
Rapaz!!! Que vídeo bom. Recentemente fiz o uso do Strategy em uma task no trabalho, mas fiz do jeito comum. Queria ter conhecido essa abordagem com ENUMS antes!
É, com ENUMS fica bem mais elegante, né? 🤩
@@giulianabezerra Demaiss!!!
Conteúdo excelente como sempre
Que bom que curtiu! 🤗
Oi, estou gostando destes vídeos “mão na massa” e da série também. Valew!!!
Que bom! Obrigada pelo feedback 🙏
feliz ano novo
Eu amo os seus videos Giuliana, sério eu estou cansado da galera que fala que vai fazer um conteúdo xyz, entretanto, ficam no raso para atingir uma grande massa. Eu só tenho que parabeniza-lá pelo conteúdo de qualidade que vem desempenhando!!
Que bom que tens curtido, brigadão pela força!
Giuliana, seu canal e conteúdo é de muitíssima qualidade! Me tornei membro.
Adoraria se você pudesse fazer algum dia um tutorial sobre o spring web flux.
Que notícia boa! Sobre o Webflux tenho um vídeo no canal, dá uma olhada: th-cam.com/video/xPqN09Jm424/w-d-xo.htmlsi=I2nUbCj8Zoi81hUD
Muito bom, adorei o bônus. Continue produzindo conteúdo.
muito legal o contéudo.
Já teria uma playlist de desgin no canal?
Sim, a playlist é Padrões de Projeto em Ação, mas esse é o primeiro vídeo, os novos entrarão nessa playlist
Essa implementação com enums é maravilhosa, fiz uso dela no meu antigo emprego, e o resultado final foi muito satisfatório.
Sim, eu uso bastante
Oi giuliana, parabéns pelo conteúdo, muito bom!
Se me permite aqui vai uma sugestão, seria legal se tivesse mostrado a outra abordagem do strategy com enum, que seria deixar a implementação dos métodos diretamente nos enums, particularmente eu prefiro essa, e acredito que é mais familiar para os devs, feliz ano novo e muitas conquistas para você 🎉
Sim, é uma variação bem comum mesmo e também super válida!
Achei que seria +1 com abordagem Common Strategy…
Ótima abordagem com Consumer!
Promessa dada é promessa cumprida! 🤗
Strategy é um dos patterns que eu mais utilizei e o mais bonito. O código fica de terno e gravata
Desses comportamentais é o que eu mais uso também, é muito útil
@@gabrielfernandes5460 pode falar que eh porque eh o mais fácil kkk
Olá, Giulia. Primeiramente, parabéns pelo vídeo. Ficou bem fácil de entender o caso de uso. Fiquei com 1 dúvida:
Vamos supor que eu tenho 2 marcas de carros (MarcaA e MarcaB) que, inicialmente, consultam o preço dos veículos utilizando o mesmo algoritmo e regras de negócio. Esse método eu chamo de "ConsultarPreço".
Se eu criar uma classe abstrata com esse comportamento comum, ex: "ConsultaPreçoBaseStrategy", e 2 classes que herdam dela, "MarcaAConsultaPreçoStrategy" e "MarcaBConsultaPreçoStrategy", isso também seria um exemplo de uso do pattern? Caso a MarcaB precise aplicar uma regra de negócio diferente da MarcaA, eu daria um override no método sem precisar alterar o comportamento da MarcaA
No seu exemplo, cada método de pagamento tem o seu próprio algoritmo. No meu caso, as duas marcas utilizam o mesmo algoritmo inicialmente, mas podem mudar no futuro.
Não se se fui claro rsrs mas é que passei por isso no trabalho e seu vídeo me fez lembrar da dúvida. Mais uma vez, obrigado pelo conteúdo e um Feliz 2025 para você! 🎉🎉
Obrigada pelo feedback! Sobre sua dúvida, sim, esse também seria um exemplo de uso do pattern. A diferença é que nesse caso você usa a herança para compartilhar um comportamento também. O problema é que usando classes a gente não consegue ter "herança múltipla" no Java. Uma alternativa, não sei se vc conhece, é adicionar o métodos nas interfaces mesmo, algo permitido a partir do Java 8 através de default methods.
@giulianabezerra obrigado pela resposta 😊
Um ótimo aliado ao strategy quando, vamos dizer, que a condicional que vai decidir qual implementação pegar é muito complexa, é o Factory.
Uso muito
Sim, a Factory Pattern é um ótimo complemento ao Strategy, também uso bastante!
show
Ótima explicação. Vai ter sobre o Builder Pattern também?
Com certeza!
Poderia abordar o mapper e também integrações com Camel, seria muito bom. É muito dificil achar conteúdos de camel na internet.
Boa, vou anotar para um futuro vídeo!
Opa, no banco em que trabalho usamos MUITO camel e bati cabeça pra aprender pq realmente tem muito pouco material. Depois de meses posso dizer que sei Camel muito bem e acho que seria incrível se a Giu fizesse um vídeo sobre. Principalmente abordando o contexto do camel Exchange, processors, toD e tratamento de erros com o onException.
Qual tema do vscode vc ta usando?
Omni Theme
Top, mas porque você usa o vscode? Como você é criadora de conteúdo, acho que conseguiria usar até o intellij ultimate
Tentei aqui pelo programa de criadores de conteúdo, vamos ver se dá certo :D