Exercício – Instalar pacotes
Os programadores da Tailwind Traders percebem que estão prestes a alocar muitos recursos no desenvolvimento de aplicações para a plataforma .NET. Estas aplicações apresentarão dados legíveis por humanos aos utilizadores, incluindo datas, horas e números.
O .NET tem os recursos para desenvolver esse aplicativo, mas os desenvolvedores têm certeza de que alguém já resolveu esse problema. Precisam de uma arquitetura. Depois de algumas pesquisas, eles encontram o Humanizer no registro do pacote NuGet. Parece ser amplamente utilizado e promete atender a todas as suas necessidades .NET. Especificamente, manipulando e exibindo cadeias de caracteres, enumerações, datas, horas, períodos de tempo, números e quantidades.
Por enquanto, os programadores pretendem que instale o Humanizer, escreva algumas manipulações de dados e execute-as para ver se o Humanizer cumpre as expetativas.
Nota
Este módulo usa a CLI do .NET (interface de linha de comando) e o Visual Studio Code para desenvolvimento local. Depois de concluir este módulo, você pode aplicar os conceitos usando o Visual Studio (Windows) ou continuar o desenvolvimento usando o Visual Studio Code (Windows, Linux e macOS).
Este módulo usa o SDK do .NET 8.0. Certifique-se de ter o .NET 8.0 instalado executando o seguinte comando no seu terminal de comando preferido:
dotnet --list-sdks
Saída semelhante ao exemplo a seguir aparece:
6.0.317 [C:\Program Files\dotnet\sdk]
7.0.401 [C:\Program Files\dotnet\sdk]
8.0.100 [C:\Program Files\dotnet\sdk]
Certifique-se de que uma versão que começa com 8 está listada. Se nenhum estiver listado ou o comando não for encontrado, instale o SDK do .NET 8.0 mais recente.
Criar um projeto .NET de exemplo
Para configurar um projeto .NET para trabalhar com dependências, usamos o Visual Studio Code. O Visual Studio Code inclui um terminal integrado, o que facilita a criação de um novo projeto. Se não quiser utilizar outro editor de código, pode executar os comandos apresentados neste módulo num terminal.
No Visual Studio Code, selecione Ficheiro>Abrir Pasta.
Crie uma nova pasta chamada DotNetDependencies no local de sua escolha e selecione Selecionar pasta.
Abra o terminal integrado no Visual Studio Code ao selecionar Vista>Terminal no menu principal.
Na janela de terminal, copie e cole o seguinte comando:
dotnet new console -f net8.0Este comando cria um ficheiro Program.cs na pasta com um programa "Hello World" básico já escrito, juntamente com um ficheiro de projeto C# chamado DotNetDependencies.csproj.
Agora você deve ter acesso a esses arquivos.
-| obj -| DotNetDependencies.csproj -| Program.csNa janela de terminal, copie e cole o seguinte comando para executar o programa "Hello World".
dotnet run
A janela do terminal exibe "Hello World!" como saída.
Configurar o Visual Studio Code para a depuração do .NET
Abra o Program.cs. Depois de abrir um ficheiro C# no Visual Studio Code pela primeira vez, irá receber um pedido para instalar extensões recomendadas para C#. Selecione o botão Install (Instalar) apresentado no pedido.
O Visual Studio Code instala a extensão C#. Ele mostra outro prompt para adicionar os ativos necessários para criar e depurar seu projeto. Selecione Yes (Sim).
Você pode fechar a guia Extensão: C# para se concentrar no código que está escrevendo.
Adicionar um pacote do NuGet através da ferramenta .NET Core
Abra o Program.cs. Deverá ter o seguinte aspeto:
Console.WriteLine("Hello, World!");A função anterior é executada no início do aplicativo e gera uma cadeia de caracteres para o console. Vamos adicionar o Humanizer, manipular dados e escrevê-los na consola.
Instale a biblioteca do Humanizer executando o seguinte comando:
dotnet add package Humanizer --version 2.7.9Abra o ficheiro DotNetDependencies.csproj e localize a secção
ItemGroup. Deverá agora ter uma entrada com um aspeto semelhante ao seguinte:<ItemGroup> <PackageReference Include="Humanizer" Version="2.7.9" /> </ItemGroup>Adicione o seguinte conteúdo na parte superior do arquivo de Program.cs que inicializa o Humanizer:
using Humanizer;O seu Program.cs deve agora ter o seguinte aspeto:
using Humanizer; Console.WriteLine("Hello, World!");Adicione o seguinte conteúdo ao arquivo Program.cs na parte inferior do arquivo em
Console.WriteLine("Hello, World!");:static void HumanizeQuantities() { Console.WriteLine("case".ToQuantity(0)); Console.WriteLine("case".ToQuantity(1)); Console.WriteLine("case".ToQuantity(5)); } static void HumanizeDates() { Console.WriteLine(DateTime.UtcNow.AddHours(-24).Humanize()); Console.WriteLine(DateTime.UtcNow.AddHours(-2).Humanize()); Console.WriteLine(TimeSpan.FromDays(1).Humanize()); Console.WriteLine(TimeSpan.FromDays(16).Humanize()); }Substitua o
Console.WriteLine("Hello, World!");pelo seguinte código:Console.WriteLine("Quantities:"); HumanizeQuantities(); Console.WriteLine("\nDate/Time Manipulation:"); HumanizeDates();Salve o arquivo (Arquivo>Salvar ou CTRL + S). Execute o aplicativo executando o seguinte comando no terminal:
dotnet runDeverá obter o seguinte resultado:
Quantities: 0 cases 1 case 5 cases Date/Time Manipulation: yesterday 2 hours ago 1 day 2 weeks
Parabéns! Você instalou com sucesso o Humanizer como uma dependência e lógica escrita para o código do aplicativo para tornar os dados mais legíveis por humanos. O Humanizer parece cumprir as expetativas e é provável que a Tailwind Traders esteja satisfeita com esta avaliação.