Melhores pacotes NuGet para projetos .NET

O desenvolvimento de software é uma tarefa complexa e, como desenvolvedor, você não ganha nada em “reinventar a roda”. Acredito firmemente que devemos tornar sua vida o mais simples possível no desenvolvimento de aplicações, utilizando pacotes testados e aprovados sempre que possível, que ajudam em uma melhor experiência na codificação.

Abaixo estão alguns dos pacotes que utilizo na maioria dos meus projetos. Acredito que eles facilitam no desenvolvimento e tornam o código muito mais simples e organizado.

1 – Serilog

Log é tudo o que você precisa para entender sua aplicação, sem ele é impossível compreender seu comportamento, identificar gargalos, alertas e erros, por isso coloquei o Serilog como o primeiro da lista.

2 – Polly

Polly é uma biblioteca .NET de resiliência de conexões e tratamento de exceptions, permitindo configurar políticas de retry, circuit breaker e timeout de maneira simples. É possível utilizar o Polly como resiliência em qualquer dependência externa da sua sua aplicação.

3 – FluentValidation

Fluent Validation é uma biblioteca para realizar validação de classes utilizadas como View Models, Commands (conceito de CQRS), DTOs (objetos de transferência de dados), ou entidades de domínio, com o objetivo de realizar a implementação de regras de validação de forma simples e rápida (Fail-fast).

4 – Humanizer

Humanizer atende a todas as suas necessidades .NET para manipular e exibir string, enum, datetime, times, timespan, timestamp, número e quantidades.

5 – RestSharper

RestSharp é a biblioteca HttpClient mais popular em aplicações .NET, trabalhando com serialização e desserialização automáticas, detecção de tipo de request e response, variedade de autenticações e recursos úteis para se comunicar com outras APIs no seu projeto. (* outra ótima opção também é o pacte Refit)

6 – Automapper

AutoMapper é uma biblioteca open-source criada por Jimmy Bogard para resolver problemas de mapeamento de um objeto para outro. Este tipo de tarefa geralmente é sensível, e essa biblioteca foi criada para resolver esta situação de forma simples (* mas cuidado para ele não se tornar um vidão de performance no seu projeto. Outra ótima alternativa é o Mapter).

7 – FluentAssertions

Fluent Assertions é um conjunto de métodos de extensão que nos permitem especificar de forma natural o resultado esperado de um teste de unidade no estilo TDD ou BDD.

8 – NSubstitute

NSubstitute é uma ótima biblioteca para mock de objetos em Test Driven Development (TDD) em .NET. Com a abordagem de jogar fora a confusão em torno de Dummies, Mocks, Stubs, Fakes, Spies e Test Doubles facilitando nas escritas dos testes.

9 – StackExchange.Redis

StackExchange.Redis é uma biblioteca que facilita a comunicação com o Redis, com vários métodos de extensão úteis deixando muito mais simples a comunicação e a manutenção de cache com o banco de dados.

10 – Dapper

Dapper trabalha com a conexão de banco de dados existente e adiciona métodos de extensão para executar queries SQL e mapeá-lo de volta para classes em C#. Com o Dapper.Contrib fica ainda mais fácil manusear as operações CRUD com seu banco de dados.

Finalizando

Esses foram os principais pacotes Nuget que utilizo em quase todos projetos. Acredito que eles contribuem para uma experiência de desenvolvimento e manutenção muito mais agradável e espero que também sejam úteis em seus projetos. Se você conhece qualquer outro pacote e acha que deveria estar nesta lista, por favor, me informe que atualizo este artigo.

Agradecimentos especiais a todos os autores e colaboradores desses pacotes, vocês tornam a vida de vários desenvolvedores muito mais fácil.

1 comentário

  1. Muito boa a indicação, eu apenas trocaria o restsharp pelo flurl

Deixe uma resposta