Press enter to see results or esc to cancel.

Gerenciando seus pacotes .NET com o NuGet

A plataforma .NET tem se mexido bastante para garantir que ela não se torne uma tecnologia legada. Seus criadores estão sempre de olho nas novas tendências e evoluções na forma de programar e distribuir software, inclusive “emprestando” os melhores recursos de novas linguagens. Isso gerou uma grande aceitação na comunidade de programadores, que consequentemente acaba tendo um papel fundamental para que a plataforma continue sendo relevante. Uma ferramenta fruto dessas mudanças e que revolucionou a forma como .dlls são distribuídas no .NET foi o NuGet.

Se você é um usuário novo do .NET, pode ficar surpreso ao saber que o NuGet não esteve sempre lá. Lançado apenas em 2010, o NuGet foi inspirado em outras linguagens que já possuíam gerenciadores de pacotes para ajudar a distribuir e gerenciar bibliotecas criadas pelos usuários, como o RubyGems e o npm. A moda pegou e hoje existem várias ferramentas consolidadas fazendo isso, como o Bower e o Alcatraz. A Microsoft não ficou pra trás e tornou o NuGet um plugin padrão do Visual Studio, usá-lo em seus projetos tornou-se quase uma obrigação.

É justamente essa adoção universal que torna um pacote NuGet tão relevante. As ferramentas mais usadas da plataforma .NET hoje são instaladas através de pacotes NuGet: JSON.Net, Entity Framework, ASP.NET MVC, Web Api. Na verdade, a partir da próxima versão do .NET até o próprio framework será distribuído através de NuGet.

Utilizando o NuGet

Para garantir que todos usem o NuGet, a Microsoft tornou a integração com o gerenciador de pacotes muito fácil e sem esforço para o programador. Existem duas maneiras de instalar um pacote NuGet. Você já deve ter esbarrado com um código semelhante a este:

PM> Install-Package EntityFramework

Esse é o comando utilizado para instalar a última versão estável do EntityFramework no seu projeto. Examinando-o vemos que ele não faz muita coisa de especial. PM é uma sigla para Package Manager, e Install-Package, como o nome sugere, é o comando do NuGet que faz a instalação.

Agora que você já sabe o que ele é, você precisa saber como usá-lo, e seu uso é tão simples quanto o comando. No Visual Studio, clique em Tools > NuGet Package Manager > Package Manager Console.

2015-01-12_21-11-02

Um console se abrirá para que você possa digitar o comando que deseja. Agora basta colar o código acima e teclar Enter. O NuGet automaticamente instalará todas as dependências que o pacote tiver e em seguida concluirá a instalação. Pronto. Você instalou todas as DLLs necessárias sem nenhum esforço.

2015-01-12_21-53-17

O método acima é ótimo quando você já sabe o ID de instalação do pacote, mas há casos em que você não tem essa informação, ou precisa escolher entre vários pacotes disponíveis. Neste caso o Visual Studio possui um buscador onde você pode pesquisar pela biblioteca a partir de seu nome. Para acessar essa opção, clique com o botão direito no seu projeto e escolha Manage Nuget Packages....

2015-01-12_21-22-34

Basta saber uma parte do nome. O Visual Studio buscará por alguma biblioteca com as palavras digitadas. Encontrada a versão desejada, clique em Install e o mesmo processo que seria feito utilizando o comando, será feito agora.

2015-01-12_21-24-29

Um outro recurso interessante desta janela é que você pode ver todas bibliotecas que possuem atualizações disponíveis. Basta clicar em Updates e clicar no botão Update para cada pacote que deseja atualizar.

2015-01-12_21-29-00

Também existe um comando para atualizar o pacote desejado sem utilizar a interface gráfica:

PM> Update-Package EntityFramework

Vale lembrar que outras ferramentas também tem suporte ao NuGet, por exemplo, o Xamarin Studio 3 possui o mesmo nível de integração que o Visual Studio oferece.

Adicionando mais fontes de pacotes

Você pode estar se perguntando: de onde os pacotes são baixados? Por padrão, o Visual Studio já vem configurado com uma galeria de pacotes, o NuGet.org. Ele é o maior repositório de pacotes NuGet disponível para o .NET, com quase 31 mil pacotes neste momento, mas isso não significa que você nunca vai querer usar outros pacotes. Por exemplo, todas bibliotecas da próxima versão do .NET estão separadas em um endereço diferente, isso está sendo feito até que o .NET vNext seja lançado oficialmente como versão estável para o público.

Essas bibliotecas estão armazenadas no MyGet.org, utilizado pela Microsoft. Não deixe se confundir com o nome parecido, o MyGet é um servidor NuGet particular (daí o nome “My”Get). Você cria um servidor e pode enviar pacotes que serão disponibilizados através de um endereço. Ele é muito utilizado por empresas que queiram gerenciar sua própria galeria de pacotes. Você terá todos os benefícios do NuGet com a possibilidade de privar o acesso apenas a quem queira dar permissão.

Para configurar um novo endereço para buscar bibliotecas no Visual Studio, vá em Tools > Options > NuGet Package Manager > Package Sources.
Adicione o endereço fornecido e defina um nome.

2015-01-12_21-43-05

Agora o Visual Studio também irá nesse endereço em busca de bibliotecas para instalar.

No próximo post você aprenderá a criar seu próprio pacote NuGet e como disponibilizá-lo para que outros possam usá-lo.

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone
Tags

Comments

Leave a Comment