Dominando os Princípios SOLID: Exemplos práticos com Java

Ғылым және технология

🗒Descrição:
Neste vídeo, como combinado no vídeo anterior, exploramos os princípios SOLID, um conjunto de diretrizes fundamentais para a construção de software de qualidade. É claro da melhor maneira possível, com uma boa mão na massa, essa será uma base muito importante para podermos seguir com nossas implementações de arquitetura limpa.
Se você é um desenvolvedor em busca de aprimorar suas habilidades e elevar o nível do seu código, este é o lugar certo!
🎯Quem Deve Assistir:
Desenvolvedores de todos os níveis de experiência que desejam aprimorar sua compreensão sobre como criar códigos mais flexíveis, escaláveis e fáceis de manter usando os princípios SOLID.
🗃Link do repo do git:
github.com/Sandrolaxx/solid-e...
Inscreva-se agora para uma jornada de aprendizado sólida em programação e eleve suas habilidades de desenvolvimento para o próximo nível!
Lembre-se de curtir o vídeo, compartilhar com seus colegas desenvolvedores e assinar o canal para mais conteúdo incrível sobre programação e boas práticas de desenvolvimento.
✨Créditos:
Music from Uppbeat (free for Creators!):
uppbeat.io/t/avbe/night-in-kyoto
License code: N9EJIPP4TME0HIVC
uppbeat.io/t/braden-deal/lets...
License code: R8J6D4P7GE4RPITV
uppbeat.io/t/arston/polaroid
License code: YTKIQDXUTRTVJSWS
uppbeat.io/t/img/spurt
License code: 1S4BDZVJINMFWXBO
Creative Commons - Attribution-NoDerivs 3.0 Unported - CC BY-ND 3.0
Downtown Glow by Ghostrifter & Devyzed
Purple Dream by Ghostrifter bit.ly/ghostrifter-yt
Music promoted by www.chosic.com/free-music/all/
Vídeo de Distill: www.pexels.com/pt-br/video/dr...
#java #solid #arquiteturalimpa #desenvolvimento #boracodar

Пікірлер: 30

  • @oadcavalcante
    @oadcavalcante2 күн бұрын

    Um dos melhores vídeos sobre SOLID que já vi até hoje!

  • @sandroramos1703

    @sandroramos1703

    Күн бұрын

    Show Ader, fico feliz que tenha gostado!👊

  • @Andrey-br2ce
    @Andrey-br2ce8 ай бұрын

    Gostei do vídeo! Há poucos vídeos que abordem princípios como solid de forma prática, se puder trazer mais conceitos desse tipo, como por exemplo arquitetura limpa, de forma prática que nem fez nesse vídeo, iria adorar! Parabéns cara, continua.

  • @sandroramos1703

    @sandroramos1703

    8 ай бұрын

    Show! Fico feliz que tenha curtido, em breve vou lançar uma série de vídeo aplicando arquitetura limpa na prática.

  • @henriqueramos6252
    @henriqueramos62528 ай бұрын

    Sempre no Padrão!!👏

  • @gabriellivieira8024
    @gabriellivieira80248 ай бұрын

    👏👏 Ótima aula professor!

  • @viniciusfranciscopradosilv2121
    @viniciusfranciscopradosilv2121Ай бұрын

    Parabéns Sandro. Ajudou bastante meu entendido deste assunto.

  • @sandroramos1703

    @sandroramos1703

    Ай бұрын

    Show vinicius!👊

  • @Gustavok2805
    @Gustavok28054 ай бұрын

    Ótimo video, deu pra entender muito bem

  • @sandroramos1703

    @sandroramos1703

    4 ай бұрын

    Show gustavo! Fico feliz que tenha gostado

  • @eprogramar
    @eprogramar8 ай бұрын

    Ufa, ainda bem que vc resolveu o acoplamento de repository e e-mail dentro de processa pedido 😅 Ainda bem que esperei até DIP pra ver vc resolvendo kkk Boa irmão, ótima aula 👏🏼👏🏼👏🏼

  • @sandroramos1703

    @sandroramos1703

    8 ай бұрын

    😂😂 Valeu meu nobre!

  • @neresneres6083
    @neresneres60835 ай бұрын

    muito bom!!!

  • @sandroramos1703

    @sandroramos1703

    5 ай бұрын

    Show! Fico feliz que tenha gostado!

  • @ericocavalcanti710
    @ericocavalcanti710Ай бұрын

    Curti mt man, parabéns!

  • @sandroramos1703

    @sandroramos1703

    Ай бұрын

    Show Érico! Tmj 👊🏻

  • @itsduZAO
    @itsduZAO2 ай бұрын

    Ótimo conteúdo, mano!

  • @sandroramos1703

    @sandroramos1703

    2 ай бұрын

    Valeu meu nobre!

  • @JoaoVictor-vi5gs
    @JoaoVictor-vi5gs8 ай бұрын

    Parabéns pelo vídeo, ficou bem bacana!!! (até fiz um resumo aqui rsrsrs). Dando meus 2 centavos aqui, só achei que ficou um pouco em aberto na hora que tu falou sobre o princípio de substituição de Liskov, pelo exemplo utilizado mesmo. Um outro exemplo seria a aplicação do padrão NullObject. O objeto que representa o estado nulo da classe pai pode ser utilizado em todos os lugares onde uma instância da classe pai também poderia ser seria utilizada.

  • @sandroramos1703

    @sandroramos1703

    8 ай бұрын

    Boa! Ótimo complemento, obrigado

  • @julianosouza2716
    @julianosouza27168 ай бұрын

    Muito bom o conteúduo. Parabéns!!! Fiquei com uma dúvida no OCP? Digamos que eu já tenha ali minha classe de processar pedidos pronta, mês que vem eu precise incluir uma nova validação, um mês depois, eu preciso novamente incluir uma nova regra de negócio, terei de extendê-la a cada vez que precisar de uma regra nova?

  • @sandroramos1703

    @sandroramos1703

    8 ай бұрын

    Sim, sempre cuidando para não ferir o LSP, uma vez que muito provavelmente essa sua classe filha da filha não conseguiria ser trocada pela classe "Processa Pedido", nesse cenário eu atuaria criando essa segunda alteração com base na classe pai "Processa Pedido" e não da classe filha.

  • @spycall
    @spycall6 ай бұрын

    Gostei do vídeo, mas o OCP acho que não é aplicável, pois sempre terá que alterar alguma coisa. No seu exemplo, está lindo, porém na prática teríamos que alterar a classe que chama a classe ProcessaPedido para chamar a classe ProcessaPedidoComAlteracaoRequerida, teve alteração. E se a validação fosse no meio do método? A validação fosse depois do salvar e antes do enviarEmailConfirmação? Você teria que refatorar a classe ProcessaPedido separando o método processar em 3 métodos, um para a regra, outro para o envio de email e o processar chamando esses 2, isso para poder estender a classe e chamar os métodos em momentos diferentes. Ou seja, teve alteração na classe ProcessarePedido, mesmo que não mudou o comportamento, teve alteração e agora temos mais 2 métodos para testar. Não sei se entendi corretamente esse princípio, pois para mim não é aplicável. Agora uma dúvida: Se fosse necessário mais uma validação depois que a classe ProcessaPedidoComAlteracaoRequerida já estivesse em produção, teria que criar mais uma classe estendendo a classe ProcessaPedidoComAlteracaoRequerida?

  • @sandroramos1703

    @sandroramos1703

    6 ай бұрын

    Você está totalmente certo, esse é um dos princípios que também busco evitar, na verdade, a maioria dos autores sugere composição sobre herança, geralmente o "usar" vai funcionar melhor do que o "ser"(da herança). Eu vou te falar, não utilizamos herança em quase lugar nenhum nas aplicações em produção que meu time gerencia, apenas em classes abstratas que contem as implementações concretas para que todas as classes "services" tenham as implementações concretas, mas do modo que o OCP propõe em nenhum lugar. Mas respondendo a sua pergunta, sim, criaria uma nova classe para adicionar essa funcionalidade, claro que cuidando para não ferir LSP. Uma maneira mais elegante seria criar essa nova classe herdando a classe inicial e não a filha. Obrigado pelo feedback e pelas dúvidas, espero tê-las sanado.

  • @rafaelmagalhaesguedes579
    @rafaelmagalhaesguedes579Ай бұрын

    Java e VSCode é meio estranho. 😅

  • @sandroramos1703

    @sandroramos1703

    Ай бұрын

    Hushasua depois de um tempo se acostuma

  • @rafaelmagalhaesguedes579

    @rafaelmagalhaesguedes579

    Ай бұрын

    @@sandroramos1703 O bom do VSCode é que da para usar o Copilot. Estava usando aqui e gostei. :D

  • @henriquesnowing8762
    @henriquesnowing8762Ай бұрын

    Que crime usar vscode

  • @sandroramos1703

    @sandroramos1703

    Ай бұрын

    Para qualquer coisa que normalmente vamos fazer(CRUD) o VS já resolve, usar IDE para esse tipo de coisa é matar uma formiga com um canhão... Para projetos gigantescos com ERP's e etc realmente faz sentido

  • @felipejanuario6881

    @felipejanuario6881

    Ай бұрын

    😂😂😂😂😂

Келесі