5 najlepszych pakietów NuGet dla .NET 5 i .NET Core w 2021
Zacznijmy od tego, że chciałem podzielić się świetnym repozytorium, które zawiera mnóstwo naprawdę fajnych pakietów NuGet i innych przydatnych komponentów .NET. A teraz przejdźmy już do artykułu.
1. Fluent Assertions
FluentAssetions pozwala na bardziej naturalną specyfikację spodziewanej asercji oraz wyniku testu jednostkowego lub przypadków testowych. Polecam to każdemu, kto programuje i testuje w C# lub .NET.
Oto przykład kodu pochodzący z dokumentacji:
IEnumerable numbers = new[] { 1, 2, 3 };
numbers.Should().OnlyContain(n => n > 0);
numbers.Should().HaveCount(4, "because we thought we put four items
in the collection");
2. AutoMapper
AutoMapper pozwala na łatwe konwertowanie jednych obiektów domenowych do innych, opierając się w tym na nazwach właściwości.
Najbardziej w AutoMapperze lubię jego prostotę - sprawia to, że development jest o wiele łatwiejszy, gdy pracujesz z obiektami DAO i DTO.
Sprawdź przykłady kodu na GitHubie.
3. Flurl
Furl to świetny URL builder, który dobrze sprawdza się w testach integracyjnych. I to właściwie wszystko, co musisz o nim wiedzieć.
Oto przykład kodu z GitHuba:
var result = await "https://api.mysite.com"
.AppendPathSegment("person")
.SetQueryParams(new { api_key = "xyz" })
.WithOAuthBearerToken("my_oauth_token")
.PostJsonAsync(new { first_name = firstName, last_name = lastName })
.ReceiveJson<T>();
4. Polly
Polly to świetny pakiet, który z pozwala na dodanie retry policies, circuit-breaker policies i cache’owania. Ogólnie bardzo łatwo go skonfigurować.
Przykłady i instrukcję, dotyczącą tego, jak zacząć, znajdziesz na ich GitHubie.
5. MediatR
Jeśli nie znasz tego pakietu, to sporo tracisz. Pozwala na prostą implementację wzorca projektowego o nazwie Mediator w Twojej aplikacji. Umożliwia też luźne połączenia klas z systemem komend lub wiadomości. Mocno polecam do praktycznie każdego projektu. Sprawdź MediatR Wiki na GitHubie i przyjrzyj się przykładom kodu oraz jego dokumentacji.
Podziel się swoimi ulubionymi pakietami NuGet w komentarzach.
Dziękuję za uwagę!
Oryginał tekstu w języku angielskim możesz przeczytać tutaj.