Já faz algum tempo que a Microsoft vêm mudando sua abordagem, o que não reflete só em seus produtos ou modelos de assinatura, mas também na comunidade que ela criou em volta das ferramentas que a gigante de tecnologia distribui para os desenvolvedores. Impulsionada pela ascensão do Azure, a Microsoft vêm investindo cada vez em tecnologias open source, como exemplo do NodeJS e ferramentas de backend como Docker. Mas, além da ajuda a fomentar as tecnologias open source já estabelecidas, de algum tempo pra cá a Microsoft vem investindo em tornar também sua plataforma de desenvolvimento open source. Aí que surge o ASP.NET Core.
Como diria Phil Karlton: “Existem duas coisas muito difíceis no mundo da ciência da computação: invalidação de cache e nomear coisas”. Até chegar neste nome foram algumas tentativas e erros, portanto, se você ver por ai alguém falando em ASP.NET 5 ou ASP.NET vNext, pode saber que estão falando da nova geração do ASP.NET. Certo, e além do nome, o que mudou no ASP.NET Core? Uma das principais características dessa nova plataforma é o fato de agora ela ser open source. E, em se tratando de uma tecnologia da Microsoft, o fato do código estar aberto e disponível para qualquer um visualizar é realmente um grande passo.
Além de open source, o ASP.NET agora é multiplataforma, o que não restringe que as aplicações sejam feitas apenas utilizando a boa e velha dupla Windows + Visual Studio. Sim, você vai poder desenvolver aplicações .NET Core em sua distribuição Linux preferida e com sua IDE preferida. 🙂 Outro ponto muito importante que a Microsoft introduziu no .NET Core foi o forte senso de modularidade. Diferente do .NET Framework, que possui bibliotecas para resolver qualquer problema, e, por isso, se torna tão pesado, o .NET Core possui somente o básico. Se você precisar de algo mais específico vai ter que baixar a biblioteca via NuGet package. Essa modularidade do .NET Core e outras modificações tornaram o framework muito mais veloz do que o anterior. Existem diversos benchmarks disponíveis na internet realizando comparações do .NET Core com outras plataformas e os resultados seguem muito impressionantes, como você pode acompanhar neste link. Agora que sabemos que existirão cada vez mais desenvolvedores .NET que irão utilizar sistemas operacionais diferente do Windows, também sabemos que não necessitamos mais de utilizar apenas a velha dupla Visual Studio + Windows para criar aplicações .NET.
Com o crescimento da utilização do .NET Core nasceram novas ferramentas para facilitar o dia a dia do programador. Agora que .NET é multiplataforma, torna-se cada dia mais fácil criar e manter uma aplicação .NET Core somente através de linha de comando. Utilizando o Yeoman, por exemplo, podemos ter uma aplicação .NET Core em poucos minutos. E, para evitar perder mercado, a Microsoft não perdeu tempo e lançou o Visual Studio Code, uma versão muito mais leve e enxuta do seu consagrado Visual Studio. O Visual Studio Code possui suporte a Windows, Linux e Mac e conta, também, com diversas extensões que podem ser instaladas para tornar o desenvolvimento dentro da ferramenta mais inteligente, fácil e dinâmico. Das extensões mais utilizadas no Visual Studio Code, podemos notar que aquelas para auxílio de linguagens como Python e Go estão entre as top 10, o que demonstra claramente que o Visual Studio Code está agradando desenvolvedores de outras linguagens e plataformas. Para demonstrar a facilidade da criação de uma aplicação ASP.NET Core vamos criar dois exemplos: a primeira demonstração será feita utilizando o apenas o command line disponibilizado pela própria plataforma e o editor VS Code e a segunda somente com Visual Studio.
Para o primeiro exemplo vamos ter que instalar algumas ferramentas, então vamos à elas. A primeira delas é o VS Code, que está disponível através deste link. Com o VS Code em mãos, temos agora que instalar o command line disponibilizado através do link. Com isso temos instalado tudo o que necessitamos para criar e manter uma aplicação ASP.NET Core. Quem já experimentou o desenvolvimento de tecnologias disponibilizadas pela Microsoft já começa a sentir uma grande mudança neste ponto. Diferentemente dos boilerplates padrões de aplicações no modelo Create/New Project, para este exemplo vamos usar apenas o nosso velho e bom CMD. Vamos lá, com o cmd aberto, vamos navegar até o diretório onde queremos criar nossa aplicação. Agora, executaremos alguns comandos:
mkdir aspNetCoreNaUmbler
cd aspNetCoreNaUmbler
dotnet new
Pronto, com isso criamos nossa primeira aplicação e conseguimos visualizar os arquivos criados executando o comando code
, que vai abrir o VS Code no diretório da aplicação. Nossa aplicação, porém, ainda não está funcionando, pois ela possui algumas dependências de pacotes que ainda não estão instalados. Nosso próximo passo, então, é resolver este problema executando o comando dotnet restore
. Com o “dotnet restore” acessamos o Nuget e baixamos todas as dependências que estão citadas no arquivo project.json
. Agora temos nossa aplicação .NET Core funcionando. 🙂
Agora, para o pessoal que gosta de usufruir das facilidades que o Visual Studio Community proporciona, vamos demonstrar como fazer a criação de uma aplicação de exemplo feita com o ASP.NET Core. Primeiramente, você deve instalar o .NET Core tools preview for Visual Studio disponível neste link. Após instalar o Visual Studio, você vai poder ver a criação de projetos do tipo .NET Core dentro do menu New Project. Diferente da versão anterior, na qual criamos a aplicação via linha de comando e tivemos que restaurar os pacotes de dependência do projeto manualmente, tanto do Nuget quanto do NPM, com este Tool do Visual Studio o restore das dependências é feito automaticamente quando iniciado o projeto. Veja todo o processo no vídeo abaixo, incluindo a publicação dentro da Umbler.
Que tal criar sua conta na Umbler para testar o ASP.NET Core agora? Nos contem nos comentários o que estão achando!
Contribuiu com o post: Marcos Artigas, Software Engineer da Umbler.