Althmann Márcio Fábio - Desenvolvimento web com ASP.NET MVC стр 5.

Шрифт
Фон

ASP.NET MVC é uma tecnologia (framework) que foi concebida para respeitar

tais premissas e mais, para facilitar (sim, facilitar) a vida dos desenvolvedores que a utilizam, uma vez que se pode escrever

códigos mais limpos, livres de dependências e segmentados (separação de responsabilidades). Isso, por inércia, nos leva a uma estrutura de aplicação mais saudável, fácil de manter e otimizar.

2.1. ASP.NET MVC? Por quê?

Casa do Código

2.1

ASP.NET MVC? Por quê?

Conforme mencionamos no capítulo 1, por muitos anos, a Microsoft apostou em

um modelo diferente daquele tradicionalmente conhecido por desenvolvedores web (a saber, ASP.NET Webforms). Muito embora esta postura tenha colaborado em

grande escala para arrebanhar desenvolvedores de outros universos para o da internet, isso acabou por gerar alguns problemas nas aplicações, dentre os quais citamos:

Dificuldade de manutenção: como o nível de abstração (automatização de tarefas e encapsulamento de conceitos) no ASP.NET WebForms é elevado, as

aplicações tendem a não utilizar boas práticas de desenvolvimento. Este fato,

na grande maioria das vezes, implica em uma aplicação muito complexa de

ser mantida;

Pouco controle na geração do HTML: este é outro dos problemas gerados pela automatização dos processos. Quando se utiliza Visual Studio para criar

aplicações ASP.NET clássicas, muito do HTML é gerado pela própria IDE (In-

tegrated Development Environment) e pelos controles de servidor (GridView,

ComboBox etc.). Isto prejudica o trabalho entre designers e desenvolvedores;

Difícil de testar: eis aqui um grande problema encontrado nas aplicações ASP.NET tradicionais: são difíceis de testar. Note, com ASP.NET WebForms,

basicamente o que fazemos em termos operacionais é arrastar um compo-

nente para a área de trabalho e adicionar um comportamento programático

ao mesmo (via code-behind). Por que estamos mencionando isso? Para dizer

que esta prática gera alto acoplamento, e isso inviabiliza, por exemplo, a realização de testes unitários. E aplicação sem teste nos dias atuais é inaceitável.

Preocupação com o ViewState: cada elemento disponibilizado em uma apli-cação ASP.NET trazia a possibilidade de se guardarem valores associados ao

mesmo para evitar gets/posts desnecessários no servidor. Esta capacidade é co-

nhecida no ASP.NET como ViewState. Uma das implicações da utilização não

criteriosa deste recurso era o impacto negativo na performance das páginas;

Não separação de responsabilidades:

não era incomum em projetos

ASP.NET WebForms encontrar páginas que acessavam bancos de dados, com-

posição de elementos HTML através de strings em um método de exibição,

10

Casa do Código

Capítulo 2. Entendendo a estrutura de uma aplicação ASP.NET MVC

validações de CPFs no servidor etc. Separar responsabilidades era mais difícil e também gerava alto acoplamento.

Você sabe o que é Alto acoplamento"?

Alto acoplamento é nome dado à ocorrência de alto grau de depen-

dência entre partes de um software, sendo que estas partes deveriam fun-

cionar de forma independente. Complicou?!

Pense na seguinte situação real, do dia a dia: Você precisa se conectar

a um banco de dados para realizar uma atividade qualquer, certo? Para

isso, provavelmente você possui um método que realiza a conexão com

o banco. Acontece que, no interior de seu método de conexão, existe a

chamada para outro método, sendo que este último apenas identifica se

ocorreu algum erro e registra em um arquivo ou tabela de logs do sis-

tema. Assim, sabemos que existe uma dependência explícita do método

de conexão para com o método de registro de log. Um só pode funcionar

se o outro funcionar.

Tal dependência chamamos de acoplamento. Se este fato ocorre de

forma sistemática no projeto de software, dizemos que a aplicação é for-

temente/altamente acoplada.

Vale ressaltar que apontar defeitos não é dizer que determinada tecnologia é

ruim. O ASP.NET WebForms ainda é muito utilizado, mas como tudo tem

prós e contras e, em alguns cenários, os defeitos apresentados por ele são maiores que os benefícios. Mesmo utilizando ASP.NET WebForms é possível ter um desenvolvimento que permite testes ou baixo acoplamento, mas devido à forma de trabalho

com a tecnologia, o esforço para garantir esses ideais é alto utilizando ASP.NET

WebForms.

Como o cenário web transformou-se rápida e amplamente nos anos posteriores

(mudança alavancada principalmente pelos negócios, que também passaram a ser

realizados neste ambiente), fez-se necessária a estruturação de uma nova tecnologia para desenvolvimento web dentro da plataforma .NET, que atendesse às novas demandas de mercado e que pudesse endereçar os problemas mencionados anteriormente. Surgiu então, o ASP.NET MVC.

11

2.2. Voltando à nossa primeira aplicação

Casa do Código

2.2

Voltando à nossa primeira aplicação

No primeiro capítulo, criamos uma aplicação de exemplo (é claro que você se lembra, certo?!). Evidentemente, a aplicação à qual nos referimos é simples, afinal de contas, apresenta apenas uma mensagem personalizada na tela, não é mesmo?

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке