Desenvolviemento web com ASP.Net e MVC

45
Desenvolvimento Web com ASP.Net e MVC Cleziel Franzoni da Costa

description

Conhecendo um poucoo ASP.Net e o ASP.Net MVC

Transcript of Desenvolviemento web com ASP.Net e MVC

Page 1: Desenvolviemento web com ASP.Net e MVC

Desenvolvimento Web com ASP.Net e MVC

Cleziel Franzoni da Costa

Page 2: Desenvolviemento web com ASP.Net e MVC

Eu...

• Técnico em Informática (Instituto Federal do Espírito Santo);

• Bacharelando em Sistemas de Informação – 4º Período (Unes).

Page 3: Desenvolviemento web com ASP.Net e MVC

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

Page 4: Desenvolviemento web com ASP.Net e 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.

Page 5: Desenvolviemento web com ASP.Net e MVC

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...

Page 6: Desenvolviemento web com ASP.Net e MVC

• A plataforma .NET é executada sobre uma Common Language Runtime - CLR (Ambiente de Execução Independente de Linguagem).

Page 7: Desenvolviemento web com ASP.Net e MVC

Serviços Presentes no CLR

• Gerenciamento de memória• Tratamento de exceções• Compilação• Segurança• Outros

Page 8: Desenvolviemento web com ASP.Net e MVC

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

Page 9: Desenvolviemento web com ASP.Net e MVC

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

Page 10: Desenvolviemento web com ASP.Net e MVC

Visual Studio 2010

• Um conjunto de ferramentas de desenvolvimento que permite aos desenvolvedores de software resolver problemas complexos e criar soluções inovadoras.

Page 11: Desenvolviemento web com ASP.Net e MVC

Três principais pilares:

• Desenvolvimento rápido de aplicativos• Colaboração eficaz em equipe• Experiências inovadoras de usuários

Page 12: Desenvolviemento web com ASP.Net e MVC

O que é ASP.Net

• ASP.NET é a plataforma da Microsoft para o desenvolvimento de aplicações Web e é o sucessor da tecnologia ASP.

Page 13: Desenvolviemento web com ASP.Net e MVC

ASP.Net não é ...

• ASP - Active Server Pages;• Linguagem de programação

Page 14: Desenvolviemento web com ASP.Net e MVC

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.

Page 15: Desenvolviemento web com ASP.Net e MVC

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.

Page 16: Desenvolviemento web com ASP.Net e MVC

Web Forms x ASP.NET MVC

Page 17: Desenvolviemento web com ASP.Net e 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

Page 18: Desenvolviemento web com ASP.Net e MVC

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.

Page 19: Desenvolviemento web com ASP.Net e MVC

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;

Page 20: Desenvolviemento web com ASP.Net e MVC

Desvantagens dos webforms:

• Há um controle limitado sobre o HTML gerado pelos web server controls;

• Dificuldade de se aplicar testes automáticos.

Page 21: Desenvolviemento web com ASP.Net e MVC

Exemplo:Usando os componentes DetailsView e

GridView para manipular cadastros.

Page 22: Desenvolviemento web com ASP.Net e MVC

Model View Controller - MVC

Page 24: Desenvolviemento web com ASP.Net e MVC

Resultado...

Page 25: Desenvolviemento web com ASP.Net e MVC

Um bom programador WEB

Referência: http://www.slideshare.net/felipernb

Page 27: Desenvolviemento web com ASP.Net e MVC

Resultado...

Page 28: Desenvolviemento web com ASP.Net e MVC

Principais erros...

• Muitos inventam seu próprio framework;• Apenas eles entendem o que fazem;• Tudo está misturado;• Não existe reaproveitamento de código.

Page 30: Desenvolviemento web com ASP.Net e MVC

Então...

• Use um padrão pré-estabelecido;

Não Invente seu próprio padrão!

Page 31: Desenvolviemento web com ASP.Net e MVC

Morte aos Frameworks Caseiros...

Page 32: Desenvolviemento web com ASP.Net e MVC

Pense no futuro...

Page 33: Desenvolviemento web com ASP.Net e MVC

O padrão MVC

• Padrão de arquitetura que separa lógica de negócio da apresentação

Page 34: Desenvolviemento web com ASP.Net e MVC

Resuldado do MVC:

Page 35: Desenvolviemento web com ASP.Net e MVC

Model (Modelo)

• O “conteúdo” que povoa sua aplicação: dados vindos do banco, Web Services, Feeds, etc.

Page 36: Desenvolviemento web com ASP.Net e MVC

View (Visão)

• O que é mostrado ao usuário

Page 37: Desenvolviemento web com ASP.Net e MVC

Controller (Controle)

• Gerencia o ambiente da requisição, e determina o que irá acontecer.

Page 38: Desenvolviemento web com ASP.Net e MVC

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

Page 39: Desenvolviemento web com ASP.Net e MVC

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

Page 40: Desenvolviemento web com ASP.Net e MVC

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

Page 41: Desenvolviemento web com ASP.Net e MVC

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>

Page 42: Desenvolviemento web com ASP.Net e MVC

Devo usar Web Forms ou

MVC??

Page 43: Desenvolviemento web com ASP.Net e MVC

WebFormsPlug-and-Play

MVCExpõe a arquitetura

Page 44: Desenvolviemento web com ASP.Net e MVC
Page 45: Desenvolviemento web com ASP.Net e MVC

Finalizando...

Links Úteis– http://www.microsoft.com/brasil/msdn/– http://www.asp.net/– http://www.msdev-es.com.br/

Contato:[email protected]