Apresentação da Disciplina: APIs e Microsserviç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:

Preparem-se para um curso repleto de desafios! 🚀