Dominando o Microsoft ASP.NET Core: Construindo Aplicativos Web
Dominando o Microsoft ASP.NET Core: Construindo Aplicativos Web
Título do Curso: Mastering Microsoft ASP.NET Core: Construindo Aplicativos Web
Visão geral do curso:
Mastering Microsoft ASP.NET Core é um curso abrangente que visa equipar os participantes com as habilidades e conhecimentos necessários para desenvolver aplicativos Web robustos e escaláveis usando o ASP.NET Core. Este curso aborda os conceitos fundamentais do ASP.NET Core, incluindo a criação de aplicativos MVC, trabalho com dados e bancos de dados, implementação de medidas de segurança e implantação de aplicativos em ambientes de produção. Os participantes ganharão experiência prática por meio de exercícios e projetos práticos, permitindo que criem aplicativos Web modernos usando os recursos avançados do ASP.NET Core.
Duração do curso: 10 semanas (recomendado)
Esboço de Curso:
Módulo 1: Introdução ao ASP.NET Core
- Compreender os recursos e benefícios do ASP.NET Core
- Configuração do ambiente de desenvolvimento ASP.NET Core
- Explorando o padrão de arquitetura MVC
- Construindo um aplicativo ASP.NET Core básico
Módulo 2: Construindo Aplicativos MVC
- Criação de modelos, visualizações e controladores
- Implementação de roteamento e padrões de URL
- Tratamento de pedidos e geração de respostas
- Implementação de validação de dados e model binding
Módulo 3: Trabalhando com dados e bancos de dados
- Conectar-se a bancos de dados usando o Entity Framework Core
- Implementação de operações CRUD com Entity Framework Core
- Realizar migrações de banco de dados e semeadura de dados
- Implementação de padrões de acesso a dados (Padrão Repositório, Unidade de Trabalho)
Módulo 4: Construindo APIs RESTful com ASP.NET Core
- Compreender os princípios de REST e Web API
- Criação de controladores e ações de API da Web
- Implementação de formatação de requisição e resposta (JSON, XML)
- Manipulação de autenticação e autorização em Web APIs
Módulo 5: Implementação de medidas de segurança
- Implementação de autenticação e autorização de usuários
- Trabalhando com ASP.NET Core Identity para gerenciamento de usuários
- Proteger dados confidenciais e proteger contra vulnerabilidades comuns
- Implementação de autorização baseada em função e baseada em declarações
Módulo 6: Desenvolvimento do lado do cliente com ASP.NET Core
- Explorando bibliotecas e estruturas do lado do cliente (JavaScript, jQuery)
- Integração de estruturas do lado do cliente (React, Angular, Vue.js) com ASP.NET Core
- Consumir APIs da Web de aplicativos do lado do cliente
- Implementação de requisições AJAX e comunicação em tempo real
Módulo 7: Testando e depurando aplicativos ASP.NET Core
- Implementação de testes de unidade e testes de integração com xUnit e NUnit
- Usando estruturas e ferramentas de teste para aplicativos ASP.NET Core
- Técnicas de depuração para identificar e resolver problemas
- Implementação de estratégias de registro e tratamento de erros
Módulo 8: Cache e otimização de desempenho
- Implementação de estratégias de cache para melhorar o desempenho
- Utilizando mecanismos de cache no ASP.NET Core (cache na memória, cache distribuído)
- Otimizando o desempenho do aplicativo por meio de criação de perfil e benchmarking
- Implementação de otimizações de desempenho em consultas ao banco de dados
Módulo 9: Práticas de implantação e DevOps
- Preparando aplicativos ASP.NET Core para implantação
- Configuração de ambientes de hospedagem (IIS, Azure App Service, Docker)
- Implementação de pipelines de integração e implantação contínuas (CI/CD)
- Monitoramento e manutenção de implantações de produção
Módulo 10: Tópicos avançados em ASP.NET Core
- Trabalhando com recursos avançados do ASP.NET Core (Middleware, Filtros)
- Implementação de internacionalização e localização
- Construir aplicativos escaláveis e resilientes usando arquitetura de microsserviços
- Explorando tópicos avançados do ASP.NET Core e tendências emergentes
Nota: Este resumo do curso fornece uma estrutura geral para o curso Mastering Microsoft ASP.NET Core. Cada módulo pode ser dividido em várias lições, incluindo exercícios práticos, tarefas de codificação e projetos para reforçar o aprendizado. Além disso, o curso pode ser personalizado com base nas necessidades específicas e nos níveis de habilidade do público-alvo.