Bem-vindo ao Curso de APIs e Microserviços

Bem-vindos à disciplina de APIs e Microsserviços! Nesta matéria, vamos explorar a construção de sistemas distribuídos utilizando APIs e arquiteturas baseadas em microsserviços. O objetivo ao longo do semestre é fornecer uma compreensão sólida sobre como projetar, desenvolver e implantar aplicações modernas escaláveis, seguras e eficientes.

Ao longo do curso, discutiremos a transição de arquiteturas monolíticas para microsserviços, abordando suas vantagens e desafios. Aprenderemos sobre padrões arquiteturais, autenticação e autorização, boas práticas de desenvolvimento, testes, conteinerização e escalabilidade, de forma a apresentar cenários reais do mercado de tecnologia.

Ao término do curso é esperado que vocês estejam aptos a compreender os desafios que envolvem o desenvolvimento de aplicações robustas e escaláveis, e que sejam capazes de enfrentá-los por meio da adoção de práticas estabelecidas na literatura de desenvolvimento de software. A disciplina será prática e orientada a projetos, proporcionando experiências aplicadas ao desenvolvimento de APIs e microsserviços.

Conteúdo Programático da Disciplina

  1. Construção de APIs REST e uso de verbos HTTP

    • Arquitetura e fundamentos das APIs REST
    • Padrões e boas práticas de desenvolvimento
    • Estratégias de autenticação e autorização
    • Testes unitários, funcionais e de integração
    • Refatoração e reúso de código
  2. Construção de aplicações baseadas em microsserviços

    • Arquiteturas para construção de microsserviços
    • Boas práticas de codificação
    • Desenvolvimento de Projeto baseado em microsserviços
  3. Conteinerização de microsserviços

    • Uso de contêineres para empacotamento e execução
    • Benefícios e desafios da conteinerização
  4. Deploy de microsserviços

    • Estratégias de implantação
    • Automação de deploy
  5. Conceitos de orquestração e coreografia de coleções de microsserviços

    • Gerenciamento e coordenação de microsserviços
  6. Introdução ao CI/CD, Load Balance, Bancos de Dados Distribuídos e Serviços de Cache
    • Automação de integração e entrega contínua
    • Balanceamento de carga e otimização de desempenho
    • Gerenciamento de dados em ambientes distribuídos
  7. Segurança em aplicações baseadas em microsserviços

    • Estratégias de proteção contra vulnerabilidades
    • Boas práticas de segurança
  8. Tópicos de escalabilidade nas aplicações de microsserviços

    • Estratégias para lidar com alta demanda e crescimento
    • Arquiteturas resilientes e eficientes

Essa disciplina será desenvolvida utilizando Java e Spring Boot como principais tecnologias, permitindo que vocês experimentem na prática a construção e o gerenciamento de microsserviços. Livro base:

  • NEWMAN, Sam. Criando microsserviços: projetando sistemas com componentes menores e mais especializados. 2. ed. São Paulo: Novatec, 2022. 688 p. ISBN 978-65-86057-88-1.

Preparem-se para um curso repleto de desafios!


Estrutura do Curso

Este material está organizado em módulos práticos. Utilize o menu lateral para navegar entre as aulas.

O que vamos ver:

  • Fundamentos: Revisão de Java, POO e HTTP.
  • Spring Boot: Criação de APIs RESTful.
  • Arquitetura: Camadas, DTOs, e Padrões de Projeto.

This site uses Just the Docs, a documentation theme for Jekyll.