52h

Para conclusão

6
Cursos

Aprofunde-se em .NET com gerenciamento de memória, Reflection, exceções, paralelismo, LINQ e padrões assíncronos

Boas-vindas à Formação de Tópicos Avançados em .NET!

Nesta formação, você terá a oportunidade de ampliar seus conhecimentos em Gerenciamento de Memória, Reflection, Exceções, Paralelismo, Events, Delegates, Lambda Expressions, LINQ e Async/Await, adquirindo uma compreensão mais aprofundada e habilidades práticas em C# e .NET.

Gerenciamento de Memória em .NET é um aspecto fundamental que garante a eficiência e a estabilidade das aplicações, gerenciando de forma automática a alocação e desalocação de memória. Compreender como o Garbage Collector funciona e como otimizar o uso de memória é crucial para desenvolver aplicações de alto desempenho e evitar vazamentos de memória.

Reflection permite que você escreva códigos dinâmicos em tempo de execução. Com Reflection, você poderá adaptar-se a diferentes cenários e expandir as funcionalidades da sua aplicação de maneira programática.

Exceções vão te auxiliam a lidar com erros em suas aplicações. Aprenda a lidar com situações inesperadas de forma eficiente. Você vai dominar o uso de blocos try-catch-finally, entender a hierarquia de exceções e aprender a criar suas próprias exceções personalizadas para um tratamento de erros mais adequado.

Paralelismo em .NET permite a execução simultânea de múltiplas operações, melhorando significativamente o desempenho de aplicações que lidam com tarefas computacionalmente intensivas ou que requerem processamento simultâneo. Aprender a usar eficientemente técnicas de paralelismo e ferramentas como a Parallel LINQ (PLINQ) pode transformar o modo como suas aplicações respondem e se comportam.

Events e Delegates em .NET são conceitos chave para a implementação de comunicações entre objetos e a construção de aplicações reativas. Eles permitem a definição de métodos que podem ser chamados em resposta a determinados eventos, facilitando o desacoplamento de componentes e a criação de sistemas extensíveis e facilmente manuteníveis.

Lambda Expressions e LINQ (Language Integrated Query) revolucionam a maneira como interagimos com dados em .NET. Com LINQ, você pode escrever consultas de dados concisas e expressivas, diretamente em C#, para coleções, bancos de dados e fontes de dados XML. Lambda Expressions, por sua vez, permitem a criação de funções anônimas com uma sintaxe clara e concisa, melhorando a legibilidade e a eficiência do código.

Async/Await em C# é um modelo de programação assíncrona que torna o trabalho com operações assíncronas mais simples e intuitivo. Dominar Async/Await é essencial para desenvolver aplicações que realizam operações de IO, chamadas de rede ou outras tarefas de longa duração sem bloquear a thread principal, proporcionando uma experiência de usuário mais fluida e responsiva.

Ao concluir essa formação, você estará equipado com uma base sólida em avançados conceitos de C# e .NET, permitindo-lhe construir aplicações mais eficientes, poderosas e escaláveis.

Por que estudar esta formação?

  • Guia de aprendizado

    Conteúdos pensados para facilitar seu estudo

  • Do básico ao avançado

    Formação completa para o mercado

  • Você dentro do mercado

    Do zero ao sonhado emprego em sua área de interesse

Comece essa formação agora mesmo e capacite-se para seu próximo projeto!

Conheça os planos

Com quem você vai aprender?

  • Daniel Artine

    Daniel é instrutor na Alura e Tech Lead na Stone Age.Possui certificação Docker e formação em Ciência da Computação pela Universidade Federal do Rio de Janeiro.Atualmente trabalha com .NET 6, AWS, Terraform, Docker e Kubernetes.

  • Daniel Artine

    Daniel é instrutor na Alura e Tech Lead na Stone Age.Possui certificação Docker e formação em Ciência da Computação pela Universidade Federal do Rio de Janeiro.Atualmente trabalha com .NET 6, AWS, Terraform, Docker e Kubernetes.

  • Marcelo Oliveira

    Marcelo é desenvolvedor e instrutor que sempre busca diminuir obstáculos no processo de desenvolvimento, visando acelerá-lo. Com foco em ASP.Net, ASP MVC e C#, é ativo na comunidade: como contribuidor do Code Project ganhou mais de 30 prêmios de melhor artigo do mês. Adora design patterns e refatoração de código.

  • Marcelo Oliveira

    Marcelo é desenvolvedor e instrutor que sempre busca diminuir obstáculos no processo de desenvolvimento, visando acelerá-lo. Com foco em ASP.Net, ASP MVC e C#, é ativo na comunidade: como contribuidor do Code Project ganhou mais de 30 prêmios de melhor artigo do mês. Adora design patterns e refatoração de código.

  • Jeniffer Bittencourt

    Oi pessoal! Eu sou a Jeni, tenho 31 anos, sou graduada em Sistemas de Informação e faço parte do time da Escola de Programação. Além dos conteúdos na plataforma, compartilho com a comunidade sobre transição de carreira e tecnologia no instagram e dev.to (@jeniblo_dev). Vamos aprender juntes? =D

  • Jeniffer Bittencourt

    Oi pessoal! Eu sou a Jeni, tenho 31 anos, sou graduada em Sistemas de Informação e faço parte do time da Escola de Programação. Além dos conteúdos na plataforma, compartilho com a comunidade sobre transição de carreira e tecnologia no instagram e dev.to (@jeniblo_dev). Vamos aprender juntes? =D

  • André Bessa

    Eu sou programador e instrutor de programação usando C# e .NET. Formado em Sistemas de Informação. já programei usando Java, PHP,C#, PostgreSQL e MySQL, além de já ter atuado com suporte também. Buscando sempre aprender mais sobre tecnologias.Hobbies são gibis e séries.

  • André Bessa

    Eu sou programador e instrutor de programação usando C# e .NET. Formado em Sistemas de Informação. já programei usando Java, PHP,C#, PostgreSQL e MySQL, além de já ter atuado com suporte também. Buscando sempre aprender mais sobre tecnologias.Hobbies são gibis e séries.

Passo a passo
  1. 1 Otimização de performance de aplicações com gerenciamento de memória

    Neste primeiro passo, você entenderá como as listas são armazenadas em memória, conhecerá os conceitos de Stack, Heap e Large Object Heap, e compreenderá onde as informações são armazenadas. Além disso, você aprenderá o que são e como utilizar Structs e Records.

    • Curso .NET: gerenciamento de memória para otimização de performance

      08h
      • Entenda como listas são armazenadas em memória
      • Conheça os conceitos de Stack, Heap e Large Object Heap e compreenda onde as informações são armazenadas
      • Aprenda o que são e como utilizar structs e records
      • Entenda o que são e como utilizar record structs
  2. 2 Reflection

    Nesta etapa, você aplicará técnicas avançadas de C# Reflection para explorar e manipular dinamicamente tipos e assemblies, entenderá profundamente o funcionamento interno do C# Reflection e suas aplicações práticas no desenvolvimento de software, e desenvolverá habilidades para criar sistemas que sejam flexíveis e extensíveis, capazes de se ajustar de forma dinâmica às mudanças nos requisitos.

    • Curso C# Reflection: manipule dinamicamente tipos e assemblies

      10h
      • Aplique técnicas avançadas de C# Reflection para explorar e manipular dinamicamente tipos e assemblies
      • Entenda profundamente o funcionamento interno do C# Reflection e suas aplicações práticas no desenvolvimento de software
      • Desenvolva habilidades para criar sistemas que sejam flexíveis e extensíveis, capazes de se ajustar de forma dinâmica às mudanças nos requisitos
      • Resolva desafios complexos, como automação de tarefas, análise dinâmica de código e implementação de estratégias avançadas de plugin
      • Implemente soluções robustas ao incorporar C# Reflection em projetos reais e melhore a flexibilidade e a manutenibilidade do código
      • Integre conhecimentos de C# Reflection em frameworks, bibliotecas externas e amplie suas capacidades de integração e colaboração em equipe
  3. 3 Tratamento de erros

    Nesta etapa, você colocará em prática conceitos sobre exceções e seus tratamentos. Entenderá como evitar que sua aplicação pare de funcionar em cenários adversos e como informar para o usuário de maneira sucinta e semântica. Além disso, utilizará conceitos de herança e polimorfismo para tornar seu código mais manutenível e legível.

    • Curso C# e Exceções: construa aplicações resilientes

      08h
      • Compreenda como lançar e capturar exceções em C#
      • Crie exceções customizadas
      • Implemente lógica de exceções em APIs
      • Conheça melhores práticas para evitar falhas na aplicação
  4. 4 Programação assíncrona

    Neste passo, você entenderá como a programação assíncrona é especialmente útil em cenários de desenvolvimento de aplicações que precisam lidar com múltiplas tarefas simultâneas, sem bloquear a interface para o usuário ou o fluxo da aplicação principal.

    • Curso C# Async: aplique recursos de programação assíncrona em seu projetos

      08h
      • Aprenda os caminhos da programação assíncrona na plataforma .NET
      • Saiba como utilizar threads para execução de um trecho de código de forma independente
      • Utilize as Tasks para simplificar a utilização de Threads mantendo o modelo assíncrono de programação
      • Simplifique ainda mais a utilização de Tasks em .NET usando as palavras reservadas async/await
      • Saiba a importancia e como empregar o modelo de programação assíncrona no contexto de uma aplicação web
  5. 5 Lambdas

    Neste passo, você aprenderá sobre eventos, delegates e expressões lambda em C#. Ao final, você estará apto a implementar essas ferramentas para escrever um código mais eficiente e organizado.

    • Curso C#: Eventos, Delegates e Lambdas

      10h
      • Entenda o funcionamento de delegates e eventos e suas aplicações práticas no desenvolvimento de aplicações orientadas a eventos
      • Desenvolva habilidades para criar sistemas baseados em eventos utilizando delegates e lambdas
      • Resolva desafios complexos, como implementar um padrão Observer, criar callbacks e realizar consultas LINQ
      • Implemente soluções ao incorporar delegates, eventos e lambdas em projetos reais
      • Melhore a flexibilidade e desacoplamento do código
      • Integre conhecimentos de delegates, eventos e lambdas em aplicações Windows Forms
      • Amplie suas capacidades de criar interfaces reativas
  6. 6 LINQ

    Neste passo, você aprenderá como utilizar LINQ (Language Integrated Query) para simplificar a manipulação e consulta de dados em suas aplicações. Além disso, você verá como integrar LINQ com o Entity Framework para gerenciar dados de forma eficaz.

    • Curso C# LINQ: explorando ferramentas de consulta

      08h
      • Aprenda a utilizar o LINQ para efetuar consultas em projetos práticos
      • Conheça as principais sintaxes da linguagem e suas aplicações
      • Aplique métodos variados do LINQ em contextos diferentes
      • Entenda como aplicar projeções e projeções anônimas no LINQ
      • Realize transformação de dados para combinar resultados
      • Trabalhe com operações em conjuntos e ordenação de dados
      • Entenda como aplicar os conceitos de agregação e agrupamento no LINQ
      • Utilize o LINQ to Entities para realizar manipulação de informações em bancos de dados

Escola

Programação

Além dessa, a categoria Programação conta com cursos de Lógica, Python, PHP, Java, .NET, Node JS, C, Computação, Jogos, IoT,e mais...

Conheça a Escola

Comece a estudar agora na maior escola de tecnologia do país

Conheça os Planos para Empresas