Conhecendo o ASP.Net MVC
                        Giovanni Bassi
                     giggio@giggio.net
           http://u...
Giovanni Bassi
Arquiteto de software
Microsoft MVP
Consultoria, gestão, mentoring
Treinamento
C#, VB, J#, F#, etc...
...
Online @
Email: giggio@giggio.net
Blog técnico: http://unplugged.giggio.net
Site: http://giovannibassi.com
Fórum: http...
Agenda
Entendendo Webforms
O que é o ASP.Net MVC
Quando usar
O que é o padrão ASP.Net MVC
Do que eu preciso?
Entende...
ENTENDENDO O WEBFORMS
Entendendo WebForms (WF)
• Primeiro framework de desenvolvimento web
  com ASP.Net
• Existe desde 2001/2002
• Rapidamente ...
Prós
• Rápido, realmente RAD
• Designer visual
• Controles ricos
• Gerenciamento de estado abstraído
• Fácil de trabalhar
...
Contras
• Difícil controle sobre o HTML gerado
• Inicialmente tinha problema com standards
  – É fácil continuar sem stand...
O QUE É O ASP.NET MVC
O que é
•   Um novo template de projeto no Visual Studio
•   Uma opção
•   Uma nova maneira de desenvolver com ASP.Net
•  ...
O que não é
• Um substituto ao WF
• Uma nova versão do WF
Demo

HELLO WORLD
QUANDO USAR
É para todos?
•   ASP.Net MVC não é para todos
•   É mais complexo
•   Exige mais do desenvolvedor
•   Exige conhecimento ...
Quando usar: político
•   Time maduro
•   Time disposto ao desafio
•   Time motivado a aprender
•   Tempo do projeto deve ...
Quando usar: técnico
• Nada de projetos “híbridos”
• Controle sobre o HTML
• Tamanho do HTML
• Foco em standards
• Flexibi...
O QUE É O PADRÃO MVC
MVC = Model View Controller
• É um padrão de arquitetura reconhecido
• Separa lógica de negócio de lógica de
  apresentação
Model




Controller           View
Relatório de vendas
DO QUE PRECISO?
Dependências
• Um único assembly:
                                        Abstractions
  – System.Web.Mvc
• Depende de:
  ...
Recursos e download



http://www.asp.net/mvc
ENTENDENDO O CICLO DE VIDA
Ciclo de vida
1. A tabela de rotas é criada
2. O UrlRoutingModule intercepta o request e
   determina a rota
3. O MvcHandl...
Demo

CICLO DE VIDA
FAQ
FAQ
•   Disponibilidade do framework
•   Estabilidade
•   Performance
•   Segurança
•   Flexibilidade
•   Open Source?
   ...
Links
• Site do ASP.Net
  – http://www.asp.net/mvc
• Blog do Scot Hanselman (MSFT – Routing/MVC)
  – http://www.hanselman....
MAIS DEMOS
Demo

CRIANDO CONTROLLER E VIEW
Demo

MÉTODOS E AÇÕES
Demo

UTILIZANDO UM MODELO
Demo

ROTAS
Mindset

- Nós precisamos de um controle Repeater!
- Nós já o temos, se chama: laço de foreach.


             Conversa en...
Obrigado!
   
Online @
Email: giggio@giggio.net
Blog técnico: http://unplugged.giggio.net
Site: http://giovannibassi.com
Fórum: http...
Próximos SlideShares
Carregando em…5
×

Introdução ao Asp.Net Mvc

4.140 visualizações

Publicada em

Webcast de introdução ao ASP.net MVC feito em parceria com o Codificando.Net.

Publicada em: Tecnologia
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
4.140
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1.423
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Introdução ao Asp.Net Mvc

  1. 1. Conhecendo o ASP.Net MVC Giovanni Bassi giggio@giggio.net http://unplugged.giggio.net
  2. 2. Giovanni Bassi Arquiteto de software Microsoft MVP Consultoria, gestão, mentoring Treinamento C#, VB, J#, F#, etc... .Net de Beta a Beta Dezenas de artigos na .Net Magazine Editor técnico da .Net Magazine Palestrante Professor universitário Líder e fundador do .Net Architects (1º grupo de arquitetura de software com .Net do Brasil)
  3. 3. Online @ Email: giggio@giggio.net Blog técnico: http://unplugged.giggio.net Site: http://giovannibassi.com Fórum: http://forum.giggio.net .Net Architects: Grupo: http://dotnetarchitects.net Online: http://tinyurl.com/DotNetArch
  4. 4. Agenda Entendendo Webforms O que é o ASP.Net MVC Quando usar O que é o padrão ASP.Net MVC Do que eu preciso? Entendendo o ciclo de vida FAQ Mais demos (stretch goals) Criando controller e view Métodos e ações Utilizando um Modelo Rotas
  5. 5. ENTENDENDO O WEBFORMS
  6. 6. Entendendo WebForms (WF) • Primeiro framework de desenvolvimento web com ASP.Net • Existe desde 2001/2002 • Rapidamente tomou parte do mercado, efetivamente matando o ASP3 • É hoje A solução de desenvolvimento web com .Net
  7. 7. Prós • Rápido, realmente RAD • Designer visual • Controles ricos • Gerenciamento de estado abstraído • Fácil de trabalhar • Migração entre Windows Forms e WebForms é muito simples • Javascript “escondido” do programador • Fácil integração com Sharepoint
  8. 8. Contras • Difícil controle sobre o HTML gerado • Inicialmente tinha problema com standards – É fácil continuar sem standards • Dificuldade na integração com frameworks javascript – será resolvido na versão 4.0 • Arquitetura não estimula a busca de padrões arquiteturais, apesar de suportá-las • Quase impossível testar GUI
  9. 9. O QUE É O ASP.NET MVC
  10. 10. O que é • Um novo template de projeto no Visual Studio • Uma opção • Uma nova maneira de desenvolver com ASP.Net • Um template mais opinativo
  11. 11. O que não é • Um substituto ao WF • Uma nova versão do WF
  12. 12. Demo HELLO WORLD
  13. 13. QUANDO USAR
  14. 14. É para todos? • ASP.Net MVC não é para todos • É mais complexo • Exige mais do desenvolvedor • Exige conhecimento de HTML • Exige conhecimento de Javascript, CSS, etc
  15. 15. Quando usar: político • Time maduro • Time disposto ao desafio • Time motivado a aprender • Tempo do projeto deve permitir • Time possui cultura de testes
  16. 16. Quando usar: técnico • Nada de projetos “híbridos” • Controle sobre o HTML • Tamanho do HTML • Foco em standards • Flexibilidade • Foco em padrões de projeto e arquitetura • Foco em bons princípios de programação (KISS, DRY) • Quiser tirar vantagem do Routing agora • Dois formulários HTML na mesma página
  17. 17. O QUE É O PADRÃO MVC
  18. 18. MVC = Model View Controller • É um padrão de arquitetura reconhecido • Separa lógica de negócio de lógica de apresentação
  19. 19. Model Controller View
  20. 20. Relatório de vendas
  21. 21. DO QUE PRECISO?
  22. 22. Dependências • Um único assembly: Abstractions – System.Web.Mvc • Depende de: – System.Web (2.0) – System.Core (3.5) Routing – System.Web Extensions (3.5) – System.Web.Abstractions (3.5 SP1) – System.Web.Routing (3.5 SP1) MVC • Um único namespace: – System.Web.Mvc • Não é parte do SP 1 do .Net 3.5/VS 2008
  23. 23. Recursos e download http://www.asp.net/mvc
  24. 24. ENTENDENDO O CICLO DE VIDA
  25. 25. Ciclo de vida 1. A tabela de rotas é criada 2. O UrlRoutingModule intercepta o request e determina a rota 3. O MvcHandler é ativado e cria o controlador esperado 4. A ação do controller é executada 5. Algum dado do modelo é obtido 6. O método View é chamado e uma view é criada 7. A view renderiza
  26. 26. Demo CICLO DE VIDA
  27. 27. FAQ
  28. 28. FAQ • Disponibilidade do framework • Estabilidade • Performance • Segurança • Flexibilidade • Open Source? – Código no Codeplex: http://www.codeplex.com/aspnet • Versão 2.0
  29. 29. Links • Site do ASP.Net – http://www.asp.net/mvc • Blog do Scot Hanselman (MSFT – Routing/MVC) – http://www.hanselman.com/blog/CategoryView.aspx?cate gory=ASP.NET+MVC • Blog do Scott Guthrie (MSFT) – http://weblogs.asp.net/scottgu/archive/tags/ASP.NET/defa ult.aspx • Blog do Phil Haack (MSFT – Routing/MVC) – http://haacked.com/Tags/ASP.NET%20MVC/default.aspx • Blog do Rob Conery (MSFT – Routing/MVC) – http://blog.wekeroad.com/tags/aspnetmvc • Meu blog: – http://unplugged.giggio.net/?tag=/asp.net+mvc
  30. 30. MAIS DEMOS
  31. 31. Demo CRIANDO CONTROLLER E VIEW
  32. 32. Demo MÉTODOS E AÇÕES
  33. 33. Demo UTILIZANDO UM MODELO
  34. 34. Demo ROTAS
  35. 35. Mindset - Nós precisamos de um controle Repeater! - Nós já o temos, se chama: laço de foreach. Conversa entre desenvolvedores da Microsoft, segundo relatado por Scott Hanselman, do time do MVC.
  36. 36. Obrigado! 
  37. 37. Online @ Email: giggio@giggio.net Blog técnico: http://unplugged.giggio.net Site: http://giovannibassi.com Fórum: http://forum.giggio.net .Net Architects: Grupo: http://dotnetarchitects.net Online: http://tinyurl.com/DotNetArch

×