Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
CQRS com RabbitMQ e Spring: Arquitetura Moderna Java
Highest Rated
Rating: 4.8 out of 5(75 ratings)
506 students
Last updated 9/2024
Portuguese

What you'll learn

  • Conceitos sobre arquitetura CQRS. Implementação de CQRS em projetos Spring. Vantagens e desvantagens do uso de CQRS. Quando usar e quando não usar CQRS.
  • Conceitos básicos de RabbitMQ. Tipos de filas e exchanges (direta, tópica, fanout). Configuração de bindings, routing keys. Integração do RabbitMQ com Spring
  • Introdução ao Spring e seus principais componentes. Anotações essenciais (@Component, @Autowired, @Service, @RestController, etc.)
  • Inversão de controle e injeção de dependências. Principais pacotes do Spring (Spring Boot, Spring Data JPA, Spring AMQP, etc.).
  • Princípios e boas práticas para construção de APIs RESTful. Uso de ferramentas como Swagger e Postman para documentação e testes.
  • Convenções de nomenclatura, versões de API, códigos de status HTTP e payloads.
  • Conceitos básicos de containers e imagens Docker. Uso do Docker Compose para orquestração de múltiplos containers.
  • Configuração de volumes, redes e portas em Docker. Comandos principais do Docker para gerenciamento de containers.
  • Configuração e uso de bancos de dados PostgreSQL e MongoDB. Replicação de dados entre bancos de dados usando microservices.

Course content

12 sections78 lectures8h 17m total length
  • Arquitetura2:45
  • Modelo de dados e diagramas do projeto2:51
  • Visão da tecnologia e arquitetura7:53

Requirements

  • Conhecimento básico de programação em Java.
  • Familiaridade com o Spring Framework. (Desejável, mas não obrigatório)
  • Entendimento básico de APIs RESTful. (Desejável, mas não obrigatório)
  • Noções de banco de dados e SQL. (Desejável, mas não obrigatório)
  • Conhecimento básico de Docker é um plus, mas não obrigatório.
  • Vontade de aprender e explorar novos conceitos.

Description

Aprenda a construir APIs utilizando as mais modernas práticas de arquitetura de software, como a arquitetura CQRS (Command Query Responsibility Segregation), amplamente adotada por grandes empresas no Brasil, incluindo Marketplaces e FinTechs que oferecem os maiores salários do mercado. Este curso abrangente e prático ensina como separar comandos e consultas para otimizar a performance e escalabilidade do seu sistema, com uma abordagem orientada a arquitetura de microserviços.


Utilizaremos PostgreSQL para os comandos e MongoDB para as consultas, garantindo uma abordagem eficiente e adaptável às necessidades de dados da sua aplicação. A comunicação entre os microserviços será realizada através do RabbitMQ, permitindo uma mensageria robusta e eficaz, essencial para sistemas distribuídos. Todos os serviços serão executados em ambientes isolados com Docker e Docker Compose, o que facilita o gerenciamento, a escalabilidade e a portabilidade da aplicação, assegurando que você possa replicar o ambiente de desenvolvimento em produção de maneira consistente.


O curso aborda em detalhes a teoria essencial sobre comunicação HTTP, RabbitMQ e mensageria, proporcionando uma compreensão sólida dos fundamentos. Além disso, oferece uma introdução completa ao Spring, uma das mais populares e poderosas frameworks Java. Cada tópico é abordado de maneira prática e aplicada, com exemplos claros e exercícios que garantem que você não só entenda os conceitos, mas também saiba como implementá-los em projetos reais.


Para ilustrar o uso dessas tecnologias e abordagens arquiteturais, o curso se concentra na construção de uma API de agendamento para salões de beleza. Este exemplo simples foi escolhido para que o curso possa ser concluído em um tempo razoável, enquanto ainda demonstra claramente a aplicação das melhores práticas de desenvolvimento. Ao final do curso, você terá construído uma API robusta e escalável, equipada com as melhores práticas de desenvolvimento e pronta para ser utilizada em aplicações de mercado.


Junte-se a nós, desenvolva suas habilidades, aumente seu conhecimento e eleve suas capacidades em desenvolvimento Java para o próximo nível. Este curso é ideal tanto para desenvolvedores iniciantes quanto para profissionais experientes que desejam aprimorar suas habilidades e conhecer as tendências mais atuais em arquitetura de software.

Who this course is for:

  • Desenvolvedores Java que desejam aprofundar seus conhecimentos em Spring e arquitetura de microservices.
  • Engenheiros de software interessados em implementar CQRS e integrar RabbitMQ em seus projetos.
  • Profissionais que desejam aprender a usar Docker para containerização de aplicações.
  • Desenvolvedores que buscam criar e documentar APIs RESTful de maneira eficaz.
  • Qualquer pessoa interessada em arquitetura de sistemas distribuídos e escaláveis.