Tag: csharp

  • Testes Unitários com xUnit e .NET: O que são Dummies e como criar e customizar com AutoFixture

    Testes Unitários com xUnit e .NET: O que são Dummies e como criar e customizar com AutoFixture

    Neste artigo vou falar sobre o conceito de Dummies no contexto de testes unitários, e como você pode criar e customizar utilizando a biblioteca AutoFixture. O que são Dummies Dummies são dados fakes, geralmente criados para apenas serem passados em alguma chamada de método de interesse, que esteja sob teste. Alguns exemplos são modelos de…

  • Rate Limiting em APIs com ASP.NET Core 7.0

    Rate Limiting em APIs com ASP.NET Core 7.0

    Neste artigo vou abordar uma nova funcionalidade nativa no ASP.NET Core, na versão 7.0: o middleware de rate limiting! Vai ser apresentado o que é o rate limiting e seus benefícios, e como configurar e utilizar este recurso em sua API ASP.NET Core. O que é Rate Limiting Vamos começar pelo conceito de Rate Limiting.…

  • Mapster e ASP.NET: mapeamento de objetos

    Mapster e ASP.NET: mapeamento de objetos

    Neste artigo eu apresento o Mapster, e mostro como ele pode ser utilizado para deixar seu desenvolvimento de software mais produtivo através de simplificação de tarefas repetidas. Se quiser checar o artigo sobre mapeamento de objetos com o AutoMapper, basta clicar aqui. Nosso cenário: mapeamento de objetos Antes de falar sobre o Mapster, é importante…

  • Análise de Sentimento com ASP.NET Core e Azure Cognitive Services

    Análise de Sentimento com ASP.NET Core e Azure Cognitive Services

    Neste artigo veremos como ter acesso a funcionalidade de análise de sentimento em uma aplicação ASP.NET Core, de maneira simples e prática. O que são Azure Cognitive Services Serviços de nuvem da Microsoft que disponibiliza recursos de inteligência artificial e machine learning para construção de aplicações “inteligentes”. Eles podem ser acessados por APIs REST, e…

  • BenchmarkDotNet: Medindo a performance de código .NET

    BenchmarkDotNet: Medindo a performance de código .NET

    Neste artigo vou apresentar a biblioteca BenchmarkDotNet, e como você pode medir performance de códigos utilizando ela, resultando em conjuntos de resultados de execuções e dados relacionados a sua performance. Mas antes de avançarmos… Antes de avançarmos no artigo e apresentar a biblioteca BenchmarkDotNet, é essencial entender alguns fundamentos relacionados a performance em códigos. Primeiramente,…

  • TDD é investimento de tempo, não é desperdício

    TDD é investimento de tempo, não é desperdício

    Há algum tempo existe resistência ao desenvolvimento baseado em Test Driven Development (TDD). Geralmente, por necessidade de entrega rápida de uma funcionalidade para o negócio, há uma pressão em deixar os testes para um segundo momento.  Fazer os testes após o desenvolvimento é uma abordagem válida, que trás como vantagem a rápida entrega da funcionalidade,…

  • Acesso a dados em APIs com .NET 6, Dapper e SQL Server

    Acesso a dados em APIs com .NET 6, Dapper e SQL Server

    Neste artigo vou falar sobre a biblioteca Dapper, explicar seus principais conceitos e apresentar um exemplo prático de uso, integrando com um banco de dados SQL. O código-fonte é baseado no projeto desenvolvido na Jornada .NET Direto ao Ponto 6.0: https://github.com/luisdeol/poupadev-api/tree/artigo-dapper Sobre o Dapper O Dapper é um Micro ORM. Mas o que isso significa?…

  • Clean Code com ASP.NET Core e C#: Code Smells

    Clean Code com ASP.NET Core e C#: Code Smells

    Quando falamos de Clean Code, nos referimos a código de boa legibilidade e manutenção. Uma grande ameaça à manutenção de uma base de código limpa são os Code Smells. Neste artigo vou cobrir os principais conceitos relacionados a Code Smells, e apresentar um exemplo prático utilizando ASP.NET Core onde realizo a identificação e refatoração de…

  • Executando Stored Procedures com .NET 6, SQL Server e Dapper

    Executando Stored Procedures com .NET 6, SQL Server e Dapper

    A tarefa de executar stored procedures é bem comum em projetos de todos tamanhos. Em alguns casos, projetos inteiros foram desenvolvidos baseados apenas nesse recurso do SQL Server, enquanto em outros algumas lógicas envolvendo fluxos com funções do SQL, tabelas temporárias e JOINs complexas foram transferidas para o banco de dados. Isso ocorre por diversos…

  • Serverless com C# e Azure Functions – Parte 2: Tipos de funções

    Serverless com C# e Azure Functions – Parte 2: Tipos de funções

    Nesta série de artigos vou abordar o desenvolvimento de soluções Serverless utilizando C# e Azure Functions, que é o serviço de computação Serverless da plataforma Microsoft Azure. Ao final do artigo passado chegamos na criação do projeto. Neste artigo vamos prosseguir com a série, apresentando diferentes tipos de funções e como elas funcionam. Artigos da…