Nancy – aplicações web mais simples, fáceis e leves

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Hoje vamos falar de Nancy, um framework leve, feito para construir aplicações web para .net e mono. A proposta do Nancy é simplificar e agilizar o desenvolvimento, diminuindo a quantidade de configurações, e isso é feito através de padrões e convenções, possibilitando a criação de sites em pouquíssimo tempo, e nós vamos ver essa agilidade aqui.

Nancy suporta requisições GET, POST, PUT, DELETE, HEAD, OPTIONS e PATCH e oferece uma linguagem DSL simples e elegante. Além disso, Nancy é criado pela comunidade e tem seu código open-source. O código está disponível no GitHub: https://github.com/NancyFx.

Uma das coisas mais legais do Nancy, é que ele é feito para não ter dependências de outros frameworks. Além disso, o Nancy trabalha com o conceito de hosts, isso significa que o Nancy pode rodar com ASP.NET, WCF, OWIN ou integrado a qualquer aplicação. As implementações desses hosts não são distribuídas em conjunto com o framework core do Nancy. Essas implementações são distribuídas de forma separada, permitindo que você utilize apenas a que desejar, e tenha liberdade de escolher a que preferir. Além de hosts, você pode escolher complementos para sua aplicação Nancy, como por exemplo um pacote de autenticação. Dessa forma, você pode ir trazendo para sua aplicação apenas os recursos que deseja e realmente vai utilizar.

Agora chega de papo e vamos fazer nossa primeira aplicação no Nancy? Abra o Visual Studio, e crie uma nova aplicação web, e escolha o o template empty conforme a figura abaixo:

HelloNancy-01

Agora utilizando o NuGet, instale o pacote do Nancy:

Install-Package Nancy

E como host vamos utilizar o ASP.NET, então, instale o pacote abaixo:

Install-Package Nancy.Hosting.Aspnet

Agora, crie uma classe com o nome HelloNancy e coloque o seguinte código:

using Nancy;

namespace HelloNancy
{
    public class HelloNancy : NancyModule
    {
        public HelloNancy()
        {
            Get["/"] = parameters => "Hello Nancy";
        }
    }
}

O que fizemos aqui, foi criar uma classe que herda de NancyModule, e em seu constructor, dizer ao Nancy que ele deve retornar “Hello Nancy” para qualquer requisição GET que chegar ao endereço raiz de nossa aplicação. Isso foi feito usando Get[“/”]. E agora, o que mais precisamos fazer? Nada, nossa aplicação está pronta. Rode a aplicação e veja o resultado.

E para criar novas rotas? É muito simples, vamos criar uma rota para uma página about, para isso acrescente altere a classe HelloNancy para que fique da seguinte forma:

using Nancy;

namespace HelloNancy
{
    public class HelloNancy : NancyModule
    {
        public HelloNancy()
        {
            Get["/"] = parameters => "Hello Nancy";
            Get["/About"] = parameters => "Esta é uma aplicação demo do Nancy";
        }
    }
}

Repare que apenas adicionamos uma nova linha, com a rota que desejamos, e implementamos o retorno que desejamos. Agora basta rodas a aplicação, e acrescentar “/about” no final da url, para ver nossa nova página.

Com o Nancy, podemos construir rapidamente serviços web, de forma prática e rápida, gastando tempo apenas no que é mais importante, que é o código da sua aplicação, o código de sua regra de negócio. Por hoje é isso, em breve mais posts sobre o Nancy, farei uma série de publicações sobre o assunto.

Para conferir mais sobre o Nancy, visite a sua página oficial: http://nancyfx.org/

Facebooktwittergoogle_plusredditpinterestlinkedinmail

4 thoughts on “Nancy – aplicações web mais simples, fáceis e leves

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *