preloader
  • Inicio
  • Arquitetura de Software Moderna usando CQRS

Arquitetura de Software Moderna usando CQRS

  • DURAÇÃO

    +6 horas

  • AULAS

    84 vídeo aulas

Inscrições ENCERRADAS para a turma 06!


Sobre o Curso

Os projetos de tecnologia tem exigido, dos profissionais, conhecimento não só em tecnologia e programação, como também habilidades de alinhar estratégias de negócio com uma arquitetura de software robusta, capaz de ser evolutiva e flexível às mudanças. Permitindo que a entrega de soluções tecnológicas amplifique e dê suporte aos planos de negócios dentro do mundo digital.

Atacar a complexidade em projetos de grande porte não é uma tarefa fácil e, muitas vezes, devido a falta de conhecimento sobre qual técnica deve ser aplicada, qual a tecnologia é a mais adequada, por exemplo, pode levar um projeto ao fracasso.

O curso de Arquitetura de Software Moderna usando CQRS vai te tornar um profissional de tecnologia atualizado com o mercado, usando técnicas de desenvolvimento que são utilizadas em projetos grandes e complexos de software. Este curso alinha teoria e prática, por isso a implementação de CQRS será mostrada não sobre a perspectiva de um framework, mas sim através da implementação de todo o conceito de CQRS from scratch, ou seja, do Zero ao Sucesso, através de um problema de domínio no estilo Booking.com.

Após concluir este curso, você vai ter aprendido as diferenças entre CQS e CQRS, tendo implementado CQRS de forma correta, compreendendo que CQS está relacionado aos padrões aplicados ao código, enquanto que CQRS foca em como a solução da sua arquitetura será definida. Para alcançar tudo isso você vai utilizar o sistema de mensageria mais cobiçado do mercado: Apache Kafka, você também vai implementar Serviços de Background usando a última versão do Aspnet Core: a versão 5.0, incluindo o desenvolvimento de Web APIs de escrita e leitura. Além disso, você também vai aprender a utilizar um banco de dados NoSql mais robustos do mercado e que desde a sua 1° versão trabalha com transações: RavenDB, além de aprender técnicas de modelagem usando Domain Driven Design, construindo uma arquitetura robusta e resiliente.

Esse curso vai te ajudar a alavancar a sua carreira como profissional de tecnologia.


O que vou aprender?

 

  • Módulo 1: Introdução | duração: 26 min.

Apresentação e uma viagem no tempo para entender a origem dos conceitos: CQS e CQRS, seus criadores e suas diferenças.


  • Módulo 2: Analisando um projeto legado | duração: 12 min.

Análise arquitetural sobre um projeto legado, identificando problemas arquiteturais e deficiências sobre: legibilidade, manutenabilidade, escalabilidade e separação de responsabilidades.


  • Módulo 3: Interface orientada a tarefas | duração: 27 min.

Entenda as diferenças entre uma interface (layout) baseado em CRUD vs Tarefas e como uma interface baseada em tarefas impacta diretamente na arquitetura de uma solução.


  • Módulo 4: Infraestrutura da solução no Visual Studio | duração: 2h

Vamos colocar em prática tudo o que foi visto em teoria até aqui. Você vai implementar, junto com o instrutor, uma infraestrutura num formato de componentes, onde cada projeto vai ser implementado, separadamente, usando a técnica de componentização. Além de aprender como criar scripts que automatizam sua infraestrutura usando tecnologias como: Docker, Docker Compose, Powershell e Shell script.


  • Módulo 5: Entendenda o que são Commands | duração: 29 min.

Você vai aprender o que representam os comandos para o CQRS, além de entender a importância dos DTOs comparados aos comandos e também vai entender onde os comandos e queries estão relacionados na Onion Architecture.


  • Módulo 6: Modelando o domínio de Gerenciamento | duração: 1 h

Você vai implementar toda a modelagem de domínio do Bounded Context de gerenciamento (management), usando técnicas de Domain Driven Design, eventos de domínio, produtores Kafka e persistência usando RavenDB.


  • Módulo 7: Modelando o domínio de Gerenciamento | duração: 43 min.

Você vai implementar toda a modelagem de domínio do Bounded Context de reserva (reservation), usando técnicas de Domain Driven Design, eventos de domínio, produtores Kafka e persistência usando RavenDB.


  • Módulo 8: Modelando as Queries | duração: 19 min.

A consulta do estado da aplicação, é uma implementação com bastante relevância para uma arquitetura CQRS. Através dessa implementação, você será capaz de entender porque as consultas precisam ficar em projetos separados e qual o impacto positivo e quais são os benefícios dessa abordagem.


  • Módulo 9: Sincronizando as base de dados | duração: 52 min.

Para que o projeto de consultas (Queries) tenha sentido, é necessário a implementação de um Read Model Updater (RMU) ou simplesmente um sincronizador entre base de dados. Você vai implementar um projeto AspNet Core 5.0 usando Background Services e consumidores Kafka trabalhando com conceitos de projeção de eventos e técnicas de serialização de dados entre produtores e consumidores, permitindo o desacoplamento entre projetos.


  • Módulo 10: UI do projeto & Retry Pattern | duração: 33 min.

Vamos apresentar todas as técnicas que foram utilizadas durante a implementação da UI como: Client Services, Resiliência usando Retry Pattern com o framework Polly. Aqui vamos te mostrar, na prática, toda essa arquietura em funcionamento, mostrando em tempo real o funcionamento dos conceitos de Consistência Eventual e Teorema CAP.


  • Módulo 11: Melhores práticas e equívocos | duração: 9 min.

Neste módulo, você vai aprender algumas dicas e sugestões sobre as melhores práticas de como usar CQS, CQRS e alguns equívocos sobre a aplicação de uma arquitetura CQRS.


Formato do curso

O curso é 100% ONLINE, com aulas gravadas. O projeto que você vai construir neste curso, também está armazenado em um repositório PRIVADO no Github, assim você pode acompanhar qualquer atualização e evolução desse projeto.

  • Ao adquirir o curso, você recebe o acesso as vídeo aulas logo após a confirmação da compra.

Público

Desenvolvedores Mid e Senior, Arquitetos de Software, Tech Leads, Team Leads, Tech Managers.


Requisitos

  • Conhecimento BÁSICO de desenvolvimento Web
  • Conhecimento BÁSICO sobre a linguagem C#
  • Conhecimento BÁSICO sobre HTTP/REST
  • Conhecimento BÁSICO de mensageria e Kafka (não é restritivo, caso não conheça)
  • Conhecimento BÁSICO de Padrões de Projeto

O que vou receber?

  • Aulas gravadas, totalizando 84 vídeo aulas com +6 horas
  • Quiz realizado durante as aulas, te ajudando a consolidar o seu aprendizado
  • Acesso vitalício a todo o contéudo
  • Acesso ao projeto no Github em repositório PRIVADO
  • Certificado gerado após conclusão de TODOS os módulos
  • App 100% gratuito (Sparkle da Hotmart) que te permite estudar quando e onde quiser com a opção de estudar OFFLINE
  • 4 LIVEs exclusivas e privadas com excelentes conteúdos:
    • ☕ Introdução ao Apache Kafka
    • ☕ Monolítios vs Monolítos Modulares
    • ☕ Estilos e Padrões Arquiteturais (CQRS e Microsserviços)
    • ☕ Aula de encerramento e tirar dúvidas
  • Grupo secreto e exclusivo no telegram, onde só os alunos desta turma poderão participar e interagir com o instrutor.
  • Teoria aplicada na prática

Pagamento


(*) Você só tem motivo aproveitar essa oportunidade e alavancar sua carreira!

  • Valor da inscrição: R$ 1500,00
  • O pagamento do valor do curso, pode ser feito em até 12x
  • Aceitamos várias formas de pagamento e também pagamento com com 2 cartões
  • Seu pagamento será feito através de uma plataforma segura de Pagamento
Cartões de Crédito Boleto bancário PIX Débito bancário

Selo de garantia
Professores
José Roberto Araújo

José Roberto Araújo

Arquitetura de Software