Introdução ao ASP.NET MVC – Parte 2

Olá pessoal, dando continuidade a série de artigos sobre MVC nesta parte vou criar um projeto do zero, citando alguns conceitos básicos do ASP.NET MVC. Esta parte ainda será bem conceitual, pois é importante termos fixados na memória os conceitos para quando formos aplicar na prática não exista confusão.

Irei usar o Visual Studio 2015 Community e o SQL Server 2014 mas, corrigindo o artigo anterior, irei utilizar a versão 4.5 (e não a 4.0 como tinha comentado) do .NET Framework com o ASP.NET MVC 5, então se você tiver pelo menos o Visual Studio 2012 o projeto irá funcionar, desde que também tenha instalado o ASP.NET and Web Tools 2013.1 for Visual Studio 2012, que pode ser obtido neste link. De qualquer forma a sugestão que fica é que você use uma versão mais atual do Visual Studio, como a 2013 ou mesmo a 2015 Community, que é inteiramente free e com mais recursos.

Antes de começar a criação do projeto é importante relembrar alguns conceitos importantes do ASP.NET MVC, descritos neste artigo e traduzido algumas partes abaixo. Recomendo a leitura do link citado, que compara quando usar Web Forms e quando usar MVC em seu projeto, entre outros assunto úteis ao contexto deste artigo.

Conceitos do Framework ASP.NET MVC

ic263184

O padrão arquitetural Model-View-Controller separa uma aplicação em três componentes principais: a model, a view e o controller. O framework ASP.NET MVC fornece uma alternativa ao padrão ASP.NET Web Forms para criar aplicações Web.

Alguns tipos de aplicações Web irão se beneficiar do framework MVC. Outras irão continuar a usar o tradicional padrão baseado em Web Forms e postbacks. Outras aplicações irão combinar os dois padrões, nenhum padrão excluí o outro.

O Framework MVC inclui os seguintes componentes:

  • Models. Objetos Model são as partes da aplicação que implementam a lógica para os dados de domínio da aplicação. Normalmente, objetos modelo recuperam e armazenam o estado do modelo na base de dados. Por exemplo, um objeto Produto pode recuperar informações de uma base de dados, operar sobre ela e então devolver a informação atualizada a tabela de Produtos ao banco de dados. Em pequenas aplicações, o modelo normalmente é uma separação conceitual  ao invés de uma física. Por exemplo, se a aplicação sempre lê um DataSet e envia para a View, a aplicação não tem uma camada física de modelo e classes associadas. Neste caso, o DataSet assume o papel de objeto modelo.
  • Views. Views são os componentes que exibem a interface de usuário da aplicação, conhecida como UI, ou User Interface. Tipicamente esta UI é criada dos dados do modelo. Um exemplo poderia ser uma view de edição de uma tabela de Produtos que exibe textboxes, dropdown lists e checkboxes baseados no estado atual do objeto Product.
  • Controllers. Controllers são os componentes que manipulam a interação do usuário, trabalham com a model e  are the components that handle user interaction, work with the model, and por fim selecionam uma view para renderizar o que é exibido na UI. Em uma aplicação MVC, a view somente exibe a informação; o controller manipula as respostas a entrada e interações do usuário. Por exemplo, o controller manipula valores querystring (aqueles valores passados por parâmetros geralmente ao final de urls) e passa estes valores para a model, que por sua vez pode usar estes valores para consultar o banco de dados.

O padrão MVC te ajuda a criar aplicações que separam diferentes aspectos da aplicação (lógica de entrada, lógica de negócio e lógica de UI), enquanto fornece um acoplamento livre entre estes elementos. O padrão especifica onde cada tipo de lógica deve ser localizada na aplicação. A lógica da UI pertence à view, a lógica de input pertence ao controller e a lógica de negócio pertence à model. Esta separação irá te ajudar a gerenciar o a complexidade quando estiver construindo uma aplicação, porque permite a você se focar em um aspecto da implementação por vez. Por exemplo, você pode ser focar na view sem ter que depender da lógica de negócio.

O acoplamento livre entre estes três componentes principais de uma aplicação MVC também promove desenvolvimento pararelo. Por exemplo, um desenvolvedor pode trabalhar na view, um segundo desenvolvedor pode trabalhar na lógica da controller e um terceiro desenvolvedor pode se focar na lógica de negócio, na model.

Criando o Projeto

Começando então criei um projeto em MVC, usando o framework 4.5, como a tela abaixo ilustra.

1

Na próxima tela basta escolher o template MVC, deixar a autenticação marcada como individual e clicar em OK. Note na imagem abaixo que temos outros templates também como o clássico Web Forms, o Web API, o Single Page Application (SPA como é conhecido), etc, mas pra este exemplo iremos utilizar o MVC .

2

Após confirmar o Visual Studio irá se encarregar de gerar um conteúdo pronto pra você de toda uma aplicação simples em MVC, com telas prontas.

A Solution Explorer deverá estar como na imagem abaixo.

3

O Visual Studio gera bastante conteúdo logo quando você cria um projeto em MVC, se você apertar F5 o projeto irá compilar, o IIS ser iniciado e uma nova aba em seu browser irá apresentar a página padrão do template criado.

4

Como foi escolhida autenticação o próprio Visual Studio se encarregou de criar as lógicas de criação de usuário e login, como você pode ver na imagem acima, pelos botões a direita da tela.

Navegue pelas páginas testando as funcionalidades criadas que na próxima parte do artigo vou passar pelas principais classes criadas e, com ajuda de alguns conceitos importantes do ciclo de vida do framework ASP.NET MVC, entender como funciona na prática o projeto “nos bastidores”.

Como o projeto criado não conteve nada novo por enquanto não será necessário disponibilizar o código fonte no Github.

Obrigado, este artigo é bem curto, o próximo terá mais conteúdo prático, de fato.

Anúncios

3 comentários sobre “Introdução ao ASP.NET MVC – Parte 2

Expresse sua opinião!

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s