27 fev - 2024 • 19:30 > 29 fev - 2024 • 22:30
O treinamento acontecerá por 3 dias, online, das 19.30 às 22.30
Modulo 1: Introdução ao ASP.NET Core 8 Minimal API
Apresentando o Minimal API
- Apresentação do ASP.NET Core 8 Minimal API
- Diferenças entre ASP.NET Core MVC e Minimal API
Fundamentos do Minimal API
- Estrutura básica de um projeto Minimal API
- Roteamento e endpoints simples
- Trabalhando com métodos HTTP
- Parâmetros de rota e consulta
- Respostas HTTP e códigos de status
- Geração de documentação com Swagger/OpenAPI
Middleware e Pipeline
- Compreensão do pipeline de requisição e resposta
- Adição de middleware personalizado
- Manipulação de erros e exceções
Modulo 2: Adicionando segurança em suas APIs
Autenticação e Autorização em ASP.NET Core
- Diferenças entre autenticação e autorização
- Estratégias de autenticação suportadas pelo ASP.NET Core
- Configuração de políticas de autorização
Introdução ao JWT (JSON Web Tokens)
- Conceitos básicos de JWT
- Estrutura de um token JWT
- Como o JWT é utilizado para autenticação e autorização
Implementando Autenticação com JWT
- Configuração do serviço de autenticação com JWT
- Geração e validação de tokens JWT
- Estratégias de armazenamento seguro de segredos
- Personalização de claims para incluir informações do usuário
Autorização com JWT
- Integração do JWT com o sistema de autorização do ASP.NET Core
- Validando permissões e papéis através de claims
- Personalização de políticas de autorização baseadas em JWT
- Controle de acesso a recursos específicos
Implementação de Refresh Tokens
- Necessidade e benefícios de Refresh Tokens
- Geração, armazenamento e uso seguro de Refresh Tokens
- Renovação de tokens expirados sem nova autenticação do usuário
Modulo 3 - Introdução ao Docker e Docker Compose
Definição e História do Docker
- O que é Docker?
- Evolução e importância no desenvolvimento de software.
Conceitos Básicos de Containers
- Containers vs. Máquinas Virtuais.
- Vantagens e casos de uso.
Instalação do Docker
- Passos para instalar o Docker nos diferentes sistemas operacionais.
- Verificação da instalação.
Docker Image
- O que são imagens?
- Download e upload de imagens.
Docker Container
- Criar, iniciar e parar containers.
- Mapeamento de portas e volumes.
Docker Hub
- Repositório de imagens públicas e privadas.
- Push e Pull de imagens.
Modulo 4: Docker Compose
Conceitos Básicos do Docker Compose
- Definição de serviços.
- Composição de múltiplos containers.
Arquivo docker-compose.yml
- Estrutura e principais diretivas.
- Exemplos práticos.
Orquestrando Serviços
- Montando nosso ambiente de desenvolvimento (MSSQL Server, Redis, Seq)
- Iniciar, parar e escalar serviços com Docker Compose.
Modulo 5 - Logs e Observabilidade
Logs e Observabilidade
- Instalando e configurando o Serilog
- Conhecendo o Open Telemetry e configurando o seu coletor de informações
- Visualizando os dados no Seq
Modulo 6 - Entity Framework
Apresentando o Entity Framework 8
- Conceitos fundamentais do Entity Framework
- Instalação do Entity Framework 8
- Configuração do DbContext e Connection String
Mapeamento de Entidades
- Tipos de mapeamento (Code-First, Database-First, Model-First)
- Atributos de mapeamento e convenções
- Relacionamentos entre entidades
Operações Básicas de CRUD (Create, Read, Update, Delete)
- Inserção de dados utilizando o EF
- Consultas LINQ para recuperação de dados
- Atualização e exclusão de registros
Trabalhando com Consultas Avançadas
- Utilização de Projeções e Joins
- Consultas assíncronas para melhor desempenho
- Filtros e ordenação de dados
Rastreamento de Mudanças e Transações
- Rastreamento de alterações em entidades
- Utilização de transações para operações atômicas
Migrações de Banco de Dados
- Criação e aplicação de migrações
- Atualizações automáticas do esquema do banco de dados
Modulo 7 - Introdução a Cache Distribuído com Redis
Introdução a Cache Distribuído
- Definição e importância do cache em sistemas distribuídos.
- Desafios associados ao gerenciamento de cache em ambientes distribuídos.
Apresentando o Redis
- Como o Redis funciona
- Instalação e configuração básica do Redis.
Integração com a nossa aplicação
- Melhorando a performance da nossa aplicação utilizando cache
Segundo o TechEmpower (https://www.techempower.com/benchmarks/#hw=ph&test=plaintext§ion=data-r22), um site especializado em efetuar benchmarks, o ASP.NET Core é um dos mais performáticos frameworks web existentes no mercado alcançando 7.006.142 de requisições por segundo.
Além disso o TIOBE (https://www.tiobe.com/tiobe-index/), site especializado em medir a popularidade das linguagens de programação, afirmou que o csharp foi a linguagem do ano de 2023.
Dito isso, a #VemCodar preparou mais um super curso para você que quer elevar o seu conhecimento em desenvolvimento de APIs a um novo patamar!
Feito de dev para dev, direto das trincheiras, por quem coloca software em produção há mais de 20 anos, o curso "APIs robustas com ASP.NET Core 8, Entity Framework, Docker e Redis" traz de maneira direta, sem enrolação, tudo que você precisa saber para construir suas APIs de tal forma que elas sejam seguras, performáticas, escaláveis e, acima de tudo, dentro de um ambiente de desenvolvimento totalmente configurado utilizando Docker e Docker Compose.
Conhecer Docker habilita a pessoa desenvolvedora a ter em sua máquina um ambiente de desenvolvimento totalmente replicável, configurável e de fácil gestão, o que agiliza muito o dia a dia de desenvolvimento. Com apenas um arquivo simples, você vai conseguir construir todo o seu ambiente de desenvolvimento em poucos segundos.
Com Docker fica muito fácil subirmos um banco de dados. Sendo assim, também vamos mostrar como o Entity Framework consegue acelerar a criação da nossa camada de acesso a dados, de forma performática e simples. O uso de migrations ainda nos traz a flexibilidade de recriar toda a nossa estrutura de tabelas em um clique.
Além disso, vamos falar sobre performance. Esse é um dos temas mais importantes, onde vamos mostrar como podemos reduzir drasticamente o tempo de uma requisição utilizando o conceito de cache distribuído. E quando falamos sobre cache, Redis é sem dúvida uma das melhores alternativas que temos.
Nós contamos também com um grupo fechado exclusivo para alunos e alunas da #VemCodar no Telegram. Lá nós trocamos informações, esclarecemos dúvidas, compartilhamos conteúdos relevantes e ainda fazemos lives periódicas exclusivas sobre novidades do mundo de software.
---
Pré-requisitos do curso:
Conhecimento básico em csharp
As gravações ficam disponíveis por 3 meses.
Professores:
20 anos de experiência em TI. Já atuou como arquiteto de soluções em projetos de alto desempenho, alto domínio em sistemas distribuídos, observabilidade, devops, arquitetura de software, arquitetura em nuvem, especialista .net atuando em Web, Mobile com Xamarin, Cognitive Services e Bots. Líder das comunidades técnicas Monkey Nights e Developers BR. 8x Microsoft MVP em Developer Technologies e atua como Staff Engineer na XP Inc.
Bacharel em Ciência da Computação e pós-graduada em Engenharia de Software, trabalha há cerca de 14 anos com desenvolvimento em C#, engenheira senior na Globo, instrutora .Net, apaixonada e ativa na comunidade técnica, ama gastar horas falando de código, e 6x Microsoft MVP.
Cancelamentos de pedidos serão aceitos até 7 dias após a compra, desde que a solicitação seja enviada até 48 horas antes do início do evento.
Saiba mais sobre o cancelamentoVocê poderá editar o participante de um ingresso apenas uma vez. Essa opção ficará disponível até 24 horas antes do início do evento.
Saiba como editar participantesSelecione o evento desejado e toque no botão acessar evento
Pronto! O link de acesso também será enviado para você por email.
#VEMCODAR
#VemCodar: A escola que transforma apaixonados por tecnologia em programadores de excelência. Venha aprender e inovar conosco!
Os dados sensíveis são criptografados e não serão salvos em nossos servidores.
Acessa a nossa Central de Ajuda Sympla ou Fale com o produtor.