Desenvolviemento web com ASP.Net e MVC

Post on 24-May-2015

1.649 views 4 download

description

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

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

Resultado...

Um bom programador WEB

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.

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:clezielfranzoni@hotmail.com