SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
Quem sou eu
● Vitor Reis - Avatar
● Analista de Sistemas Pleno - Pearson
● Sócio - NewGT Desenvolvimento Mobile
● Blog: www.vitorreis7.wordpress.com
2
Ferramentas exploradas nesta
apresentação
● WebMatrix
○ IIS Express
○ ASP.Net Web Pages
○ SQL Server Compact
● Razor
3
Microsoft WebMatrix
● Criar
● Customizar
● Publicar
● Servidor Web
● Banco de dados
● Ferramenta de
desenvolvimento
4
WebMatrix Versus Visual Studio
Eu <3 Web Apps!
Eu apenas
preciso de uma
ferramenta em
que seja fácil de
configurar,
customizar e
publicar
Eu quero construir
web sites sozinho,
com uma
ferramenta fácil e
com recursos de
um framework
Eu sou um
desenvolvedor
profissional e crio
web sites
complexos,
grandes e
escaláveis com
um time de
desenvolvimento 5
O que é HTML?
● HTML é uma linguagem para descrever
páginas web.
● HTML vem de Hyper Text Markup Language
● Uma linguagem de marcação é um conjunto
de tags
● As tags definem o conteúdo da página
6
O que é CSS?
● CSS vem de Cascading Style Sheet.
● Um estilo define como o navegador irá exibir
um elemento HTML.
● Folhas de estilo "externas" podem lhe fazer
aumentar a produtividade.
● Folhas de estilo "externas" são
armazenadas em arquivos CSS.
7
Uma breve história das plataformas de
desenvolvimento WEB da Microsoft
● Active Server Pages - ASP
● ASP.NET Web Forms
● ASP.NET MVC
● WebMatrix
8
Active Server Pages - (ASP)
Código e marcação são criados em um único
arquivo, em que cada arquivo fisico
corresponde a uma página no website.
Os desenvolvedores queriam mais:
● Reutilização de código
● Separação de Conceitos
● Facilitar a utilização dos
princípios de POO
9
Abordagem baseada em página
Separação em 2 camadas: Código e Marcação
É considerado por alguns desenvolvedores
como uma abstração de HTML, Javascript e
CSS.
ASP.Net Web Forms - 2002
10
ASP.NET MVC - 2008
● Total abandono da abordagem baseada em
páginas
● Em vez de arquivos de marcação, as views
tem a responsabilidade de gerar o HTML
para o usuário.
● Permite que o desenvolvedor escolha a
linguagem que usará na view, Razor
emergiu como a mais popular.
11
MVC - Padrão de Projeto
O modelo MVC define aplicações com 3
camadas principais:
A camada de negócio (Model logic)
A camada de exibição (View logic)
O controle de entradas (Controller logic)
12
MVC - Padrão de Projeto
Comparação
WEB FORMS
6 Marcações de
transição
PHP
2 Marcações de
transição
1 Função
Razor
2 Marcações de
transição
Objetivos do Razor
Compacto, Expressivo e Fluído
Fácil de aprender
Não é uma nova linguagem
Funciona em qualquer editor de texto
Possuí um Intellisense muito bom
View Engine!
15
Hello, Razor!
O código:
<div>Hello world, essa página foi renderizada
em @DateTime.Now</div>
Produz algo do tipo:
<div>Hello world, essa página foi renderizada
em 12/7/1941 7:38:00 AM</div>
16
Diferenciando Código de Marcação
Code Nuggets
Expressões simples que são avaliadas e
renderizadas em uma linha, por exemplo:
Identifique-se, efetue o @Html.ActionLink("Login", "Login")
Será renderizado como:
Identifique-se, efetue o <a href="/Login">Login</a>
17
Diferenciando Código de Marcação
Code Blocks
Contém somente código, em vez de uma
combinação de marcação e código:
@{
LayoutPage = "~/Views/Shared/_Layout.cshtml";
View.Title = "Detalhes do produto " + Model.ProductName;
}
18
Comentários com Razor
@*
@{
LayoutPage = "~/Views/Shared/_Layout.cshtml";
View.Title = "Inicio";
}
*@
19
Razor Helpers
● Web Grid
● Web Graphics
● Google Analytics
● Facebook Integration
● Twitter Integration
● Sending Email
● Validation
20
Razor e Microsoft WebMatrix
Demonstração 21
Criando um banco de dados
Popular o banco com dados
22
Exibindo os dados do banco
Adicionar Post
- Uma página que você usará para adicionar
novos "posts" no blog.
Post
- Uma página que exibe todos os dados de
determinado post.
Página Inicial
- Contém uma lista com os posts mais
recentes e link para a visualização completa. 23
Adicionar livro
Formulário
Gerenciando os dados no POST do formulário
Validando os dados
24
Finalizando hands on
Aplicar CSS de layout
Aplicar CSS no formulario
25
Referências - Leitura sugerida
Referências - Leitura sugerida
27
Perguntas - Encerramento
Muito Obrigado!
FB: facebook.com/vitorreis7
email: vitorreis@outlook.com
Blog: www.vitorreis7.wordpress.com
28

Weitere ähnliche Inhalte

Was ist angesagt?

Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Rodrigo Kono
 
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3André Luiz Forchesatto
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOakjesuinoPower
 
TDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSTDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSLeonardo Zanivan
 
Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXjesuinoPower
 
Word camp sp 2017 willian marques
Word camp sp 2017   willian marquesWord camp sp 2017   willian marques
Word camp sp 2017 willian marquesWillian Marques
 
Apache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFApache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFBruno Borges
 
Java script vs vb script
Java script vs vb scriptJava script vs vb script
Java script vs vb scriptNielson Santana
 
ASP .NET MVC na Prática - C. Augusto Proiete
ASP .NET MVC na Prática - C. Augusto ProieteASP .NET MVC na Prática - C. Augusto Proiete
ASP .NET MVC na Prática - C. Augusto ProieteComunidade NetPonto
 
Conectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPConectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPjesuinoPower
 
AngularJS - Just Digital
AngularJS - Just DigitalAngularJS - Just Digital
AngularJS - Just DigitalJust Digital
 
Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Leandro Nunes
 
Web Development em 2015
Web Development em 2015Web Development em 2015
Web Development em 2015Emanuel Santos
 
Comtec2010 asp.net mvc
Comtec2010 asp.net mvcComtec2010 asp.net mvc
Comtec2010 asp.net mvcTadeu Matos
 
Arquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAOArquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAOLeonardo Sousa
 
ASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVCASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVCguest489a65e
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsCloves Moreira Junior
 

Was ist angesagt? (20)

Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4
 
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOak
 
Angularjs
AngularjsAngularjs
Angularjs
 
Profissão Front-end
Profissão Front-endProfissão Front-end
Profissão Front-end
 
TDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSTDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJS
 
Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFX
 
Word camp sp 2017 willian marques
Word camp sp 2017   willian marquesWord camp sp 2017   willian marques
Word camp sp 2017 willian marques
 
Apache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFApache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSF
 
Java script vs vb script
Java script vs vb scriptJava script vs vb script
Java script vs vb script
 
ASP .NET MVC na Prática - C. Augusto Proiete
ASP .NET MVC na Prática - C. Augusto ProieteASP .NET MVC na Prática - C. Augusto Proiete
ASP .NET MVC na Prática - C. Augusto Proiete
 
Conectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPConectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SP
 
AngularJS - Just Digital
AngularJS - Just DigitalAngularJS - Just Digital
AngularJS - Just Digital
 
JavaScript
JavaScriptJavaScript
JavaScript
 
Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Lightning Talk: Webdev who?
Lightning Talk: Webdev who?
 
Web Development em 2015
Web Development em 2015Web Development em 2015
Web Development em 2015
 
Comtec2010 asp.net mvc
Comtec2010 asp.net mvcComtec2010 asp.net mvc
Comtec2010 asp.net mvc
 
Arquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAOArquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAO
 
ASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVCASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVC
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
 

Ähnlich wie Introdução ao desenvolvimento web com WebMatrix e Razor

Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livreRuan Carvalho
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software LivreRuan Carvalho
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKRyan Padilha
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosRodolfo Fadino Junior
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1César Augusto Pessôa
 
Afinal, o que são Single Page Applications
Afinal, o que são Single Page ApplicationsAfinal, o que são Single Page Applications
Afinal, o que são Single Page ApplicationsPatrick Monteiro
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifaguestea329c
 
Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Netjaumnc
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoZend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoFlávio Lisboa
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Fabrício Lopes Sanchez
 
Ai1415 ad-tp2-g4-a
Ai1415 ad-tp2-g4-aAi1415 ad-tp2-g4-a
Ai1415 ad-tp2-g4-amfsmsl
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Introdução ao Asp.Net Mvc
Introdução ao Asp.Net MvcIntrodução ao Asp.Net Mvc
Introdução ao Asp.Net MvcGiovanni Bassi
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edtedbrunoaalves
 
Apresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumApresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumRafael Cruz, MCT, MBA
 

Ähnlich wie Introdução ao desenvolvimento web com WebMatrix e Razor (20)

Web Dev Camp
Web Dev CampWeb Dev Camp
Web Dev Camp
 
Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livre
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software Livre
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDK
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São Carlos
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1
 
Afinal, o que são Single Page Applications
Afinal, o que são Single Page ApplicationsAfinal, o que são Single Page Applications
Afinal, o que são Single Page Applications
 
Palestra ASP.NET MVC
Palestra ASP.NET MVCPalestra ASP.NET MVC
Palestra ASP.NET MVC
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Net
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoZend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutenção
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Ai1415 ad-tp2-g4-a
Ai1415 ad-tp2-g4-aAi1415 ad-tp2-g4-a
Ai1415 ad-tp2-g4-a
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Introdução ao Asp.Net Mvc
Introdução ao Asp.Net MvcIntrodução ao Asp.Net Mvc
Introdução ao Asp.Net Mvc
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edted
 
Apresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumApresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e Selenium
 
Aula 05 - Java Script Básico
Aula 05 -  Java Script BásicoAula 05 -  Java Script Básico
Aula 05 - Java Script Básico
 

Introdução ao desenvolvimento web com WebMatrix e Razor

  • 1.
  • 2. Quem sou eu ● Vitor Reis - Avatar ● Analista de Sistemas Pleno - Pearson ● Sócio - NewGT Desenvolvimento Mobile ● Blog: www.vitorreis7.wordpress.com 2
  • 3. Ferramentas exploradas nesta apresentação ● WebMatrix ○ IIS Express ○ ASP.Net Web Pages ○ SQL Server Compact ● Razor 3
  • 4. Microsoft WebMatrix ● Criar ● Customizar ● Publicar ● Servidor Web ● Banco de dados ● Ferramenta de desenvolvimento 4
  • 5. WebMatrix Versus Visual Studio Eu <3 Web Apps! Eu apenas preciso de uma ferramenta em que seja fácil de configurar, customizar e publicar Eu quero construir web sites sozinho, com uma ferramenta fácil e com recursos de um framework Eu sou um desenvolvedor profissional e crio web sites complexos, grandes e escaláveis com um time de desenvolvimento 5
  • 6. O que é HTML? ● HTML é uma linguagem para descrever páginas web. ● HTML vem de Hyper Text Markup Language ● Uma linguagem de marcação é um conjunto de tags ● As tags definem o conteúdo da página 6
  • 7. O que é CSS? ● CSS vem de Cascading Style Sheet. ● Um estilo define como o navegador irá exibir um elemento HTML. ● Folhas de estilo "externas" podem lhe fazer aumentar a produtividade. ● Folhas de estilo "externas" são armazenadas em arquivos CSS. 7
  • 8. Uma breve história das plataformas de desenvolvimento WEB da Microsoft ● Active Server Pages - ASP ● ASP.NET Web Forms ● ASP.NET MVC ● WebMatrix 8
  • 9. Active Server Pages - (ASP) Código e marcação são criados em um único arquivo, em que cada arquivo fisico corresponde a uma página no website. Os desenvolvedores queriam mais: ● Reutilização de código ● Separação de Conceitos ● Facilitar a utilização dos princípios de POO 9
  • 10. Abordagem baseada em página Separação em 2 camadas: Código e Marcação É considerado por alguns desenvolvedores como uma abstração de HTML, Javascript e CSS. ASP.Net Web Forms - 2002 10
  • 11. ASP.NET MVC - 2008 ● Total abandono da abordagem baseada em páginas ● Em vez de arquivos de marcação, as views tem a responsabilidade de gerar o HTML para o usuário. ● Permite que o desenvolvedor escolha a linguagem que usará na view, Razor emergiu como a mais popular. 11
  • 12. MVC - Padrão de Projeto O modelo MVC define aplicações com 3 camadas principais: A camada de negócio (Model logic) A camada de exibição (View logic) O controle de entradas (Controller logic) 12
  • 13. MVC - Padrão de Projeto
  • 14. Comparação WEB FORMS 6 Marcações de transição PHP 2 Marcações de transição 1 Função Razor 2 Marcações de transição
  • 15. Objetivos do Razor Compacto, Expressivo e Fluído Fácil de aprender Não é uma nova linguagem Funciona em qualquer editor de texto Possuí um Intellisense muito bom View Engine! 15
  • 16. Hello, Razor! O código: <div>Hello world, essa página foi renderizada em @DateTime.Now</div> Produz algo do tipo: <div>Hello world, essa página foi renderizada em 12/7/1941 7:38:00 AM</div> 16
  • 17. Diferenciando Código de Marcação Code Nuggets Expressões simples que são avaliadas e renderizadas em uma linha, por exemplo: Identifique-se, efetue o @Html.ActionLink("Login", "Login") Será renderizado como: Identifique-se, efetue o <a href="/Login">Login</a> 17
  • 18. Diferenciando Código de Marcação Code Blocks Contém somente código, em vez de uma combinação de marcação e código: @{ LayoutPage = "~/Views/Shared/_Layout.cshtml"; View.Title = "Detalhes do produto " + Model.ProductName; } 18
  • 19. Comentários com Razor @* @{ LayoutPage = "~/Views/Shared/_Layout.cshtml"; View.Title = "Inicio"; } *@ 19
  • 20. Razor Helpers ● Web Grid ● Web Graphics ● Google Analytics ● Facebook Integration ● Twitter Integration ● Sending Email ● Validation 20
  • 21. Razor e Microsoft WebMatrix Demonstração 21
  • 22. Criando um banco de dados Popular o banco com dados 22
  • 23. Exibindo os dados do banco Adicionar Post - Uma página que você usará para adicionar novos "posts" no blog. Post - Uma página que exibe todos os dados de determinado post. Página Inicial - Contém uma lista com os posts mais recentes e link para a visualização completa. 23
  • 24. Adicionar livro Formulário Gerenciando os dados no POST do formulário Validando os dados 24
  • 25. Finalizando hands on Aplicar CSS de layout Aplicar CSS no formulario 25
  • 27. Referências - Leitura sugerida 27
  • 28. Perguntas - Encerramento Muito Obrigado! FB: facebook.com/vitorreis7 email: vitorreis@outlook.com Blog: www.vitorreis7.wordpress.com 28