Entenda o OCP (Open-Closed Principle) | Série SOLID na Prática

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ธ.ค. 2024

ความคิดเห็น • 30

  • @baltaio
    @baltaio  หลายเดือนก่อน +1

    BLACK FRIDAY 2024 ⚡ Está chegando a maior e melhor da nossa história! Não perca.
    INSCREVA-SE NA LISTA DE ESPERA: go.balta.io/black-friday?TH-cam&

  • @termobin
    @termobin 29 วันที่ผ่านมา

    Parabéns Balta por essa série sobre SOLID! Excelente conteúdo!

    • @baltaio
      @baltaio  29 วันที่ผ่านมา

      Muito obrigado 😁

  • @lincolnjunior2897
    @lincolnjunior2897 หลายเดือนก่อน +1

    Excelente Conteúdo!

    • @baltaio
      @baltaio  หลายเดือนก่อน

      🚀

  • @robertom.4562
    @robertom.4562 หลายเดือนก่อน +6

    Conhecimento em SOLID deveria ser mais aprofundado nas faculdades, porém o que temos hoje é coisas rasas sobre POO e acabamos tendo que aprender por fora ou na pratica ao ingressar no mercado de trabalho. Obrigado por mais esse compartilhamento conosco mestre Balta, curto bastante seus videos

    • @baltaio
      @baltaio  หลายเดือนก่อน

      Muito obrigado!!!

    • @emanuelmartins9508
      @emanuelmartins9508 หลายเดือนก่อน

      Em toda entrevista de emprego que participo/participei pedem isso pesadamente, de entrevistas p pleno até a entrevista para tech lead. Mas raras empresas que trabalhei utilizam de maneira contundente. Os conceitos do solid vão se perdendo ou sendo desvirtuados fortemente com o tempo de existência de um sistema com seu crescimento e manutenção.

  • @BernardoMeine
    @BernardoMeine หลายเดือนก่อน +2

    Uma das primeiras vezes que vejo o OCP ser apresentado na prática. Parabéns pelo excelente conteúdo Balta!

    • @baltaio
      @baltaio  หลายเดือนก่อน

      Muito obrigado🚀🚀🚀

  • @arthurguelle
    @arthurguelle หลายเดือนก่อน +1

    estudando OCP e ficou tão claro como depois desse video. obrigado pelo conteudo estou aguardando a blackfriday.

    • @baltaio
      @baltaio  หลายเดือนก่อน

      Sucesso!

  • @otavioaugusto7711
    @otavioaugusto7711 หลายเดือนก่อน +1

    Sempre tive duvida no OCP na prática, muito obrigado balta

    • @baltaio
      @baltaio  หลายเดือนก่อน

      Espero ter ajudado

  • @GioScaa
    @GioScaa หลายเดือนก่อน +1

    Excelente conteúdo. Valeu.

    • @baltaio
      @baltaio  หลายเดือนก่อน

      🚀

  • @luizalmeida4884
    @luizalmeida4884 หลายเดือนก่อน +1

    No caso de uso do Discout discount2, já é usado o "L" do SOLID, o principio da substituição de Liscow(não sei se é assim que se escreve Liscow), correto?

    • @baltaio
      @baltaio  หลายเดือนก่อน

      Sim, falei isso no vídeo de LSP!

  • @carlosvieiratech
    @carlosvieiratech หลายเดือนก่อน +2

    Balta, o uso de Interfaces seria mais uma opção para aplicar o OCP?

    • @baltaio
      @baltaio  หลายเดือนก่อน +1

      Não por que não estamos falando de contratos e sim de estender funcionalidades de uma classe... como uma interfaces não tem comportamento (Até tem mais é papo longo) ele não se aplica.
      Temos um vídeo aqui falando sobre classes abstratas vs interfaces!

    • @carlosvieiratech
      @carlosvieiratech หลายเดือนก่อน

      @@baltaio beleza. Obrigado

  • @DayaneLimadeCastro
    @DayaneLimadeCastro หลายเดือนก่อน +1

    Uma dúvida, na plataforma do Balta, onde tem essa questão das arquiteturas?
    E é utilizado o .net 8 nelas?
    Estou querendo assinar.
    Estou atrás de algo novo e avançado.

    • @baltaio
      @baltaio  หลายเดือนก่อน +1

      Temos uma carreira só sobre arquitetura, este novo curso vai entrar lá!

  • @migueltotti4046
    @migueltotti4046 หลายเดือนก่อน +1

    Vídeo incrível mestre.
    Mas tenho uma duvida, o principio OCP se aplica a classes de serviço?
    Ex: uma classe ProductService que faz um CRUD basico de produtos. Quero adicionar a funcionalidade para retornar todos os produtos com algum critério (produtos por pedido, produtos por categorias, produtos que estão em falta…).
    Nesse caso podemos apenas criar novos metodos dentro da classe de serviço ou é melhor estender de alguma forma? Se fosse necessário estender, eu fico meio confuso em como isso seria feito.

    • @baltaio
      @baltaio  หลายเดือนก่อน +1

      O SOLID no geral não está relacionado a "onde"... não está limitado a entidades ou mesmo a camada de domínio... podem ser aplicados até no Front!

    • @felipealvesj
      @felipealvesj หลายเดือนก่อน

      Você pode criar um ProductServiceCustom que herda de ProductService e adicionar seu método.
      Outra alternativa mais invasiva: Você pode alterar seu ProductService pra Partial e criar um segundo arquivo para a classe partial ProductService e adicionar seu método. Ao compilar, o C# "junta os métodos em uma classe só, ProductService.

  • @zapeweb
    @zapeweb หลายเดือนก่อน +1

    Pergunta, mestre: porque usar classes abstratas e não interfaces?
    Valeu, Balta!

    • @baltaio
      @baltaio  หลายเดือนก่อน +4

      Classes abstratas podem definir comportamentos, interfaces não (***).. Então em alguns casos, derivar de uma classe base pode ser melhor do que apenas implementar um contrato.
      *** - Nas versões mais recentes do .NET, é permitido ter implementação nas interfaces 😅
      Mas eu particularmente não gosto!

    • @zapeweb
      @zapeweb หลายเดือนก่อน

      @baltaio muito obrigado, Professor!

    • @emanuelmartins9508
      @emanuelmartins9508 หลายเดือนก่อน

      já trabalhei em sistemas que o sistema "base" era inteiramente de classes abstratas e personalizávamos as funcionalidades dando overrides, criando sistemas personalizados para os clientes sob o base existente, funcionava fino esse processo. Já no sistema onde trabalho atualmente acho BASTANTE difícil ir lendo o que o sistema tá fazendo ou p onde a função tá indo quando se está lendo um código de uma classe abstrata com mais de 10 overrides, que chama outra com mais 60 overrides e por ai vai... Na arquitetura onde trabalho atualmente prefiro utilizar Interfacezinhas, que facilitam a navegabilidade.