Desenvolviemento web com ASP.Net e MVC
-
Upload
cleziel-franzoni-da-costa -
Category
Technology
-
view
1.649 -
download
4
description
Transcript of Desenvolviemento web com ASP.Net e MVC
Desenvolvimento Web com ASP.Net e MVC
Cleziel Franzoni da Costa
Eu...
• Técnico em Informática (Instituto Federal do Espírito Santo);
• Bacharelando em Sistemas de Informação – 4º Período (Unes).
Agenda
• O .NET Framework e o CLR• O que posso fazer com o .NET Framework?• Plataforma Visual Studio 2010• O que é ASP.Net• Facilidades do ASP.Net• Web Forms x ASP.NET MVC• MVC• ASP.Net MVC
O que é o .NET Framework?
• É uma iniciativa da Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações.
O que posso fazer com o .NET Framework?
• Aplicativos Web• Aplicativos para Servidores• Aplicativos de Console• Aplicativos de Banco de Dados• Serviços Windows• Web Services e muito mais...
• A plataforma .NET é executada sobre uma Common Language Runtime - CLR (Ambiente de Execução Independente de Linguagem).
Serviços Presentes no CLR
• Gerenciamento de memória• Tratamento de exceções• Compilação• Segurança• Outros
Estrutura do .Net Framework.NET Framework
C# C++ F# JScript ...
Common Type System (CTS)
ADO .NET: Data e XML
ASP .NET: Web Services e Web Forms
Windows Forms
.NET Framework Base Class
Common Language Runtime (CLR)
Visu
al S
tudio
.NET
Linguagens Suportadas pelo CLR
• APL• Boo• Clarion• Component Pascal• C#• C++• Eiffel• Forth• Fortran• Haskell• Java• JScript• J#• Lua• Mercury• Mondrian
• Oberon• Object Pascal / Delphi Language• Oz• Pascal• Perl• PowerBuilder• PowerShell• Python• RPG• Ruby• Scheme• SmallTalk• Standard ML• Visual Basic
Fonte: http://www.dotnetlanguages.net
Visual Studio 2010
• Um conjunto de ferramentas de desenvolvimento que permite aos desenvolvedores de software resolver problemas complexos e criar soluções inovadoras.
Três principais pilares:
• Desenvolvimento rápido de aplicativos• Colaboração eficaz em equipe• Experiências inovadoras de usuários
O que é ASP.Net
• ASP.NET é a plataforma da Microsoft para o desenvolvimento de aplicações Web e é o sucessor da tecnologia ASP.
ASP.Net não é ...
• ASP - Active Server Pages;• Linguagem de programação
O que é ASP?
• ASP é uma tecnologia de scripts que roda no servidor e permite que os scripts embutidos em uma página HTML sejam executados por um servidor WEB.
Principais vantagens do ASP.Net
• Separação entre lógica e apresentação.• Mais fácil de implementar.• Suporte a múltiplas linguagens.• Web Form Controls – controles mais
avançados e “inteligentes”.• Todas as vantagens oferecidas pelo
Framework .NET.
Web Forms x ASP.NET MVC
Entendendo os Web Forms
• Primeiro framework de desenvolvimento web com ASP.NET
• Existe desde 2001/2002• Rapidamente tomou parte do mercado,
efetivamente matando o ASP 3• Era a única solução de desenvolvimento
web com .NET
Qual a vantagem de usar Web Forms?
• Código compilado;• Rapidez no desenvolvimento;• Statefull (matém estado entre requisições);• Vasta gama de classes;• Encoraja o uso da POO.
Desvantagens dos webforms:
• Uso incorreto do ViewState pode pesar ;• O ciclo de vida da página dificulta um pouco
a manipulação dos valores dos controles;• O programador tende a colocar a lógica toda
no CodeBehind;
Desvantagens dos webforms:
• Há um controle limitado sobre o HTML gerado pelos web server controls;
• Dificuldade de se aplicar testes automáticos.
Exemplo:Usando os componentes DetailsView e
GridView para manipular cadastros.
Model View Controller - MVC
Referência: http://www.slideshare.net/felipernb
Resultado...
Um bom programador WEB
Referência: http://www.slideshare.net/felipernb
Referência: http://www.slideshare.net/felipernb
Resultado...
Principais erros...
• Muitos inventam seu próprio framework;• Apenas eles entendem o que fazem;• Tudo está misturado;• Não existe reaproveitamento de código.
Referência: http://www.slideshare.net/felipernb
Então...
• Use um padrão pré-estabelecido;
Não Invente seu próprio padrão!
Morte aos Frameworks Caseiros...
Pense no futuro...
O padrão MVC
• Padrão de arquitetura que separa lógica de negócio da apresentação
Resuldado do MVC:
Model (Modelo)
• O “conteúdo” que povoa sua aplicação: dados vindos do banco, Web Services, Feeds, etc.
View (Visão)
• O que é mostrado ao usuário
Controller (Controle)
• Gerencia o ambiente da requisição, e determina o que irá acontecer.
O ASP.Net MVC Framework
• O que é:– Implementação do padrão MVC para o ASP.NET– Um novo template de projeto no Visual Studio– Uma nova maneira de desenvolver com ASP.NET– Uma opção
• O que não é:– Um substituto ao Webforms– Uma nova versão dos Webforms
Vantagens...
• Arquitetura: total separação de conceitos• Extensibilidade: pode-se alterar a engine de
visualização, de roteamento de urls, da fábrica de controllers
• Alto controle sobre o HTML gerado• Testabilidade
Vantagens...
• Sistema de roteamento de URLs sofisticado e intuitivo
• Construído sobre o que há de melhor na plataforma .NET
• Evolução constante • Open Source• Controle sobre HTTP: POST, GET, DELETE
Segurança
• Membership e Roles continuam valendo– Com exceção da restrição de paginas por
grupo/usuário
<location path="Contas/ContaCorrente.aspx"> <system.web> <authorization> <allow roles="Gerentes" /> <deny users="*" /> </authorization> </system.web></location>
Devo usar Web Forms ou
MVC??
WebFormsPlug-and-Play
MVCExpõe a arquitetura
Finalizando...
Links Úteis– http://www.microsoft.com/brasil/msdn/– http://www.asp.net/– http://www.msdev-es.com.br/
Contato:[email protected]