SlideShare uma empresa Scribd logo
1 de 33
Web Standards
com .NET
Manoel dos Santos @manoeldossantos
Web Standards
• Conjunto de especificações técnicas e guidelines
para interpretação e criação de web sites
• Criados e mantidos pelo W3C
• http://www.w3.org/standards/
W3C
• Missão:
– “Guiar a World Wide Web para que atinja todo seu potencial,
desenvolvendo protocolos e diretrizes que garantam seu
crescimento de longo prazo.”
• Princípios:
– Web para todos
– Web em tudo
• Visão:
– Web para Interação Rica
– Web dos Dados e Serviços
– Web de Confiança
Diferentes dispositivos
Diferentes navegadores
Acid3
Vantagens
• SEO
• Arquivos menores
• Acessibilidade
• Compatibilidade
• Fácil manutenção
• Flexibilidade de layout
Conteúdo + Apresentação + Comportamento
Conteúdo
Conteúdo ou “Markup”
• Semântica
– Entenda o significado das tags e use-as corretamente
• Pragmatismo
– Use de forma prática, compreensível, limpa e clara
• Identifique os elementos quando necessário
– Use classes e ids para descrever o conteúdo e não seu
visual. Ex.: use “alerta” e não “vermelho”
Apresentação
Apresentação ou Estilos
• Separação
– Mantenha todos os estilos em um arquivo separado.
<link rel=“stylesheet” media=“screen”
href=“estilos.css” />
• Tudo que for estilo deve ser definido no CSS
– Imagens relacionadas ao visual do site deve estar
definidas como estilo
Comportamento
Comportamento ou Manipulação
do DOM
• Não obstrusivo
– Uma página deve funcionar normalmente quando o
javascript estiver desabilitado.
Receita de bolo
1. Monte a estrutura – HTML
2. Crie os estilos – CSS
3. Adicione os comportamentos – Javascript/AJAX
Showtime
Validação
• (X)HTML - http://validator.w3.org/
• CSS - http://jigsaw.w3.org/css-validator/
ASP.NET vs Web Standards
• <asp:Label> somente como rótulo de formulário e
sempre com AssociatedControlID
• Para campos de textos utilize <asp:Literal> (nunca
<asp:Label>)
• Nunca utilize propriedades de estilo, pra isso use
somente CSS
• Se for necessário utilizar componentes do tipo
• CheckBoxList e RadioButtonList devem ser usados com
a propriedade RepeatLayout como Flow
• Prefira <asp:Repeater> para listagens
• MVC oferece mais controle sobre o HTML
A Evolução
HTML5
CSS3
HTML5
• Foco em Web Applications
• Deve virar recomendação em 2012
• Já é suportado pelos navegadores mais modernos
• Menor dependência de javascript
• O “fim” dos plugins
http://dev.w3.org/html5/spec-author-view/
Melhoria da Semântica
Novos elementos para identificar o conteúdo
• <header>
• <footer>
• <section>
• <article>
• <nav>
• <figure>
• http://www.w3schools.com/html5/html5_reference.asp
Maiores novidades
• Elementos multimídia sem plugins
– <audio> e <video>
• Desenhos dinâmicos
– <canvas>
• Armazenamentos de dados no cliente (local
storage)
• Geolocalização
• Drag and drop
Showtime
http://www.findmebyip.com/litmus/
Suporte atual dos navegadores
Galeria
http://html5gallery.com/
CSS3
• CSS agora está na 3 camada (comportamento)
• Menos imagens
• Maior controle
• Modular
Suporte atual dos navegadores
http://www.findmebyip.com/litmus
O Fim
Manoel dos Santos
manoeldosantos@gmail.com
@manoeldossantos

Mais conteúdo relacionado

Mais procurados

Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Rodrigo Kono
 
CoffeeScript Aula 01 Introdução a CoffeeScript
CoffeeScript Aula 01 Introdução a CoffeeScriptCoffeeScript Aula 01 Introdução a CoffeeScript
CoffeeScript Aula 01 Introdução a CoffeeScriptWelington Sampaio
 
0 Introdução ao Desenvolvimento Web - Apresentação
0   Introdução ao Desenvolvimento Web - Apresentação0   Introdução ao Desenvolvimento Web - Apresentação
0 Introdução ao Desenvolvimento Web - ApresentaçãoMauro Duarte
 
Introducao desenvolvimento-web
Introducao desenvolvimento-webIntroducao desenvolvimento-web
Introducao desenvolvimento-webMarcio Mota
 
ASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVCASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVCFelipe Pimentel
 
Web 1.0
Web 1.0Web 1.0
Web 1.0trasel
 
ASP.NET - Conhecendo um pouco do framework
ASP.NET - Conhecendo um pouco do frameworkASP.NET - Conhecendo um pouco do framework
ASP.NET - Conhecendo um pouco do frameworkGuilherme Ferreira
 
WordPress como CMS
WordPress como CMSWordPress como CMS
WordPress como CMSleogermani
 
Acessibilidade web, perda de tempo?
Acessibilidade web, perda de tempo?Acessibilidade web, perda de tempo?
Acessibilidade web, perda de tempo?Andréa Zambrana
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...Cleber Dantas
 
drupal: ligando os nos da rede
drupal: ligando os nos da rededrupal: ligando os nos da rede
drupal: ligando os nos da redeAndré Avorio
 
AAi1415 ad-tp3-g5
AAi1415 ad-tp3-g5AAi1415 ad-tp3-g5
AAi1415 ad-tp3-g5silvia_ctdi
 

Mais procurados (20)

Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4
 
Apresentação Padrões Web
Apresentação Padrões WebApresentação Padrões Web
Apresentação Padrões Web
 
CoffeeScript Aula 01 Introdução a CoffeeScript
CoffeeScript Aula 01 Introdução a CoffeeScriptCoffeeScript Aula 01 Introdução a CoffeeScript
CoffeeScript Aula 01 Introdução a CoffeeScript
 
CMS - Joomla
CMS - JoomlaCMS - Joomla
CMS - Joomla
 
0 Introdução ao Desenvolvimento Web - Apresentação
0   Introdução ao Desenvolvimento Web - Apresentação0   Introdução ao Desenvolvimento Web - Apresentação
0 Introdução ao Desenvolvimento Web - Apresentação
 
Introducao desenvolvimento-web
Introducao desenvolvimento-webIntroducao desenvolvimento-web
Introducao desenvolvimento-web
 
ASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVCASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVC
 
Web 1.0
Web 1.0Web 1.0
Web 1.0
 
ASP.NET - Conhecendo um pouco do framework
ASP.NET - Conhecendo um pouco do frameworkASP.NET - Conhecendo um pouco do framework
ASP.NET - Conhecendo um pouco do framework
 
WordPress como CMS
WordPress como CMSWordPress como CMS
WordPress como CMS
 
CEJS 0.0.2
CEJS 0.0.2CEJS 0.0.2
CEJS 0.0.2
 
Acessibilidade web, perda de tempo?
Acessibilidade web, perda de tempo?Acessibilidade web, perda de tempo?
Acessibilidade web, perda de tempo?
 
W2py pyconpe
W2py pyconpeW2py pyconpe
W2py pyconpe
 
Wordpress
WordpressWordpress
Wordpress
 
Ce JS 23 06-2012
Ce JS 23 06-2012Ce JS 23 06-2012
Ce JS 23 06-2012
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
 
drupal: ligando os nos da rede
drupal: ligando os nos da rededrupal: ligando os nos da rede
drupal: ligando os nos da rede
 
AAi1415 ad-tp3-g5
AAi1415 ad-tp3-g5AAi1415 ad-tp3-g5
AAi1415 ad-tp3-g5
 
Introdução ao AngularJS
Introdução ao AngularJSIntrodução ao AngularJS
Introdução ao AngularJS
 
Java script
Java scriptJava script
Java script
 

Destaque

K19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvcK19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvcCaique Moretto
 
Microsoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETMicrosoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETphilipsoares
 
Minas Decide Estratégias
Minas Decide EstratégiasMinas Decide Estratégias
Minas Decide Estratégiasminasdecide
 
Revista da turma da monica drogas
Revista da turma da monica   drogasRevista da turma da monica   drogas
Revista da turma da monica drogasemíliapignata
 
Reflexão sobre a tarefa 1
Reflexão sobre a tarefa 1Reflexão sobre a tarefa 1
Reflexão sobre a tarefa 1Anaigreja
 
Vasos para Interiores com reserva de água
Vasos para Interiores com reserva de águaVasos para Interiores com reserva de água
Vasos para Interiores com reserva de águaEcossistemas.com
 
G16 imperialismo europeu
G16 imperialismo europeuG16 imperialismo europeu
G16 imperialismo europeuDiego Pontiá
 
Desafio National Geographic 2009 1ª fase
Desafio National Geographic  2009   1ª faseDesafio National Geographic  2009   1ª fase
Desafio National Geographic 2009 1ª faseHENRIQUE GOMES DE LIMA
 
O cadete da aman
O cadete da amanO cadete da aman
O cadete da amanPDT
 
Palestra fia f inal_ago10
Palestra fia f inal_ago10Palestra fia f inal_ago10
Palestra fia f inal_ago10Bombril
 
O problema é seu... a solução também
O problema é seu... a solução tambémO problema é seu... a solução também
O problema é seu... a solução tambémCecilia Fernandes
 
LOA 2011 apresentacao do Secretario Municipal de Planejamento
LOA 2011 apresentacao do Secretario Municipal de PlanejamentoLOA 2011 apresentacao do Secretario Municipal de Planejamento
LOA 2011 apresentacao do Secretario Municipal de PlanejamentoMovimento Nossa BH
 
55 al-recordes mundiais-ga1
55 al-recordes mundiais-ga155 al-recordes mundiais-ga1
55 al-recordes mundiais-ga1cmatias1967
 

Destaque (20)

K19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvcK19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvc
 
Microsoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETMicrosoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NET
 
Minas Decide Estratégias
Minas Decide EstratégiasMinas Decide Estratégias
Minas Decide Estratégias
 
Revista da turma da monica drogas
Revista da turma da monica   drogasRevista da turma da monica   drogas
Revista da turma da monica drogas
 
IMUS
IMUSIMUS
IMUS
 
Reflexão sobre a tarefa 1
Reflexão sobre a tarefa 1Reflexão sobre a tarefa 1
Reflexão sobre a tarefa 1
 
Vasos para Interiores com reserva de água
Vasos para Interiores com reserva de águaVasos para Interiores com reserva de água
Vasos para Interiores com reserva de água
 
G16 imperialismo europeu
G16 imperialismo europeuG16 imperialismo europeu
G16 imperialismo europeu
 
Desafio National Geographic 2009 1ª fase
Desafio National Geographic  2009   1ª faseDesafio National Geographic  2009   1ª fase
Desafio National Geographic 2009 1ª fase
 
O cadete da aman
O cadete da amanO cadete da aman
O cadete da aman
 
08. panorama comex mg ago2011
08. panorama comex mg ago201108. panorama comex mg ago2011
08. panorama comex mg ago2011
 
Palestra fia f inal_ago10
Palestra fia f inal_ago10Palestra fia f inal_ago10
Palestra fia f inal_ago10
 
O problema é seu... a solução também
O problema é seu... a solução tambémO problema é seu... a solução também
O problema é seu... a solução também
 
Carlos santana
Carlos santanaCarlos santana
Carlos santana
 
04. panorama comex mg abr2010
04. panorama   comex mg abr201004. panorama   comex mg abr2010
04. panorama comex mg abr2010
 
LOA 2011 apresentacao do Secretario Municipal de Planejamento
LOA 2011 apresentacao do Secretario Municipal de PlanejamentoLOA 2011 apresentacao do Secretario Municipal de Planejamento
LOA 2011 apresentacao do Secretario Municipal de Planejamento
 
Planol urbà mallorca
Planol urbà mallorcaPlanol urbà mallorca
Planol urbà mallorca
 
Urss russia atualidades
Urss   russia atualidadesUrss   russia atualidades
Urss russia atualidades
 
Mem%f3ria
Mem%f3riaMem%f3ria
Mem%f3ria
 
55 al-recordes mundiais-ga1
55 al-recordes mundiais-ga155 al-recordes mundiais-ga1
55 al-recordes mundiais-ga1
 

Semelhante a Web Standards com .NET: Conteúdo, Apresentação e Comportamento

ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifaguestea329c
 
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaAlexandre Tarifa
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edtedbrunoaalves
 
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
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIgor Takenami
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a InternetLeonardo Soares
 
Desvendando padrões para desenvolvimento web, base para o sucesso
Desvendando padrões para desenvolvimento web, base para o sucessoDesvendando padrões para desenvolvimento web, base para o sucesso
Desvendando padrões para desenvolvimento web, base para o sucessoUbiratan Z. do Nascimento
 
HTML 5, CSS 3 e o futuro da Web
HTML 5, CSS 3 e o futuro da WebHTML 5, CSS 3 e o futuro da Web
HTML 5, CSS 3 e o futuro da WebDiego Pessoa
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRodrigo Recio
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdfRubenManhia
 

Semelhante a Web Standards com .NET: Conteúdo, Apresentação e Comportamento (20)

Palestra ASP.NET MVC
Palestra ASP.NET MVCPalestra ASP.NET MVC
Palestra ASP.NET MVC
 
Curso HTML 5 - Aula Inicial
Curso HTML 5 - Aula InicialCurso HTML 5 - Aula Inicial
Curso HTML 5 - Aula Inicial
 
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
 
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edted
 
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
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 
Desvendando padrões para desenvolvimento web, base para o sucesso
Desvendando padrões para desenvolvimento web, base para o sucessoDesvendando padrões para desenvolvimento web, base para o sucesso
Desvendando padrões para desenvolvimento web, base para o sucesso
 
HTML 5, CSS 3 e o futuro da Web
HTML 5, CSS 3 e o futuro da WebHTML 5, CSS 3 e o futuro da Web
HTML 5, CSS 3 e o futuro da Web
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
 
Desenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVCDesenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVC
 
Html5 Aula 6
Html5 Aula 6Html5 Aula 6
Html5 Aula 6
 
Curso AngularJS - Parte 1
Curso AngularJS - Parte 1Curso AngularJS - Parte 1
Curso AngularJS - Parte 1
 
(A18) LabMM3 - Ajax
(A18) LabMM3 - Ajax(A18) LabMM3 - Ajax
(A18) LabMM3 - Ajax
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf
 

Mais de Manoel dos Santos

Mais de Manoel dos Santos (9)

Design para inovação
Design para inovaçãoDesign para inovação
Design para inovação
 
Metro UI na IxDA Floripa
Metro UI na IxDA FloripaMetro UI na IxDA Floripa
Metro UI na IxDA Floripa
 
Metro para Windows Phone
Metro para Windows PhoneMetro para Windows Phone
Metro para Windows Phone
 
Interface Metro para Windows Phone
Interface Metro para Windows PhoneInterface Metro para Windows Phone
Interface Metro para Windows Phone
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Metro para Windows Phone 7
Metro para Windows Phone 7Metro para Windows Phone 7
Metro para Windows Phone 7
 
Minicurso HTML5
Minicurso HTML5Minicurso HTML5
Minicurso HTML5
 
HTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da WebHTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da Web
 
E-ncendio
E-ncendioE-ncendio
E-ncendio
 

Web Standards com .NET: Conteúdo, Apresentação e Comportamento

  • 1. Web Standards com .NET Manoel dos Santos @manoeldossantos
  • 2. Web Standards • Conjunto de especificações técnicas e guidelines para interpretação e criação de web sites • Criados e mantidos pelo W3C • http://www.w3.org/standards/
  • 3. W3C • Missão: – “Guiar a World Wide Web para que atinja todo seu potencial, desenvolvendo protocolos e diretrizes que garantam seu crescimento de longo prazo.” • Princípios: – Web para todos – Web em tudo • Visão: – Web para Interação Rica – Web dos Dados e Serviços – Web de Confiança
  • 7.
  • 8. Vantagens • SEO • Arquivos menores • Acessibilidade • Compatibilidade • Fácil manutenção • Flexibilidade de layout
  • 9. Conteúdo + Apresentação + Comportamento
  • 11. Conteúdo ou “Markup” • Semântica – Entenda o significado das tags e use-as corretamente • Pragmatismo – Use de forma prática, compreensível, limpa e clara • Identifique os elementos quando necessário – Use classes e ids para descrever o conteúdo e não seu visual. Ex.: use “alerta” e não “vermelho”
  • 13. Apresentação ou Estilos • Separação – Mantenha todos os estilos em um arquivo separado. <link rel=“stylesheet” media=“screen” href=“estilos.css” /> • Tudo que for estilo deve ser definido no CSS – Imagens relacionadas ao visual do site deve estar definidas como estilo
  • 15. Comportamento ou Manipulação do DOM • Não obstrusivo – Uma página deve funcionar normalmente quando o javascript estiver desabilitado.
  • 16. Receita de bolo 1. Monte a estrutura – HTML 2. Crie os estilos – CSS 3. Adicione os comportamentos – Javascript/AJAX
  • 18. Validação • (X)HTML - http://validator.w3.org/ • CSS - http://jigsaw.w3.org/css-validator/
  • 19. ASP.NET vs Web Standards • <asp:Label> somente como rótulo de formulário e sempre com AssociatedControlID • Para campos de textos utilize <asp:Literal> (nunca <asp:Label>) • Nunca utilize propriedades de estilo, pra isso use somente CSS • Se for necessário utilizar componentes do tipo • CheckBoxList e RadioButtonList devem ser usados com a propriedade RepeatLayout como Flow • Prefira <asp:Repeater> para listagens • MVC oferece mais controle sobre o HTML
  • 21. HTML5 • Foco em Web Applications • Deve virar recomendação em 2012 • Já é suportado pelos navegadores mais modernos • Menor dependência de javascript • O “fim” dos plugins http://dev.w3.org/html5/spec-author-view/
  • 22. Melhoria da Semântica Novos elementos para identificar o conteúdo • <header> • <footer> • <section> • <article> • <nav> • <figure> • http://www.w3schools.com/html5/html5_reference.asp
  • 23. Maiores novidades • Elementos multimídia sem plugins – <audio> e <video> • Desenhos dinâmicos – <canvas> • Armazenamentos de dados no cliente (local storage) • Geolocalização • Drag and drop
  • 26.
  • 27.
  • 28.
  • 30. CSS3 • CSS agora está na 3 camada (comportamento) • Menos imagens • Maior controle • Modular
  • 31. Suporte atual dos navegadores http://www.findmebyip.com/litmus
  • 32.
  • 33. O Fim Manoel dos Santos manoeldosantos@gmail.com @manoeldossantos

Notas do Editor

  1. Boa noite! Meu nome é manoel e eu sou user experience designer. Eu trabalho há mais ou menos 5 anos com design de interfaces de software e hoje eu estou trabalhando na Dígitro. Não é fácil a vida de um designer entusiasta da Microsoft, mas eu garanto pra vocês que um dia eu ainda vou ouvir o Steve Ballmer gritando “Designers, Designers, Designers” e, algum evento. Bom, eu vim aqui hoje pra falar sobe web standards. Vou apresentar um pouco as bases dos padrões, algumas dicas para trabalhar com .NET e, no fim, vou falar um pouco sobre HTML5 e CSS3.
  2. Pra quem não sabe, Web Standards ou Padrões Web no bom e velho português, são especificações e guidelines escritos pelo W3C para normatizar a criação de web sites e a interpretação deles pelos navegadores. Essas especificações falam sobre o que são e pra quem servem cada tag, por exemplo, e como devem ser usadas. Fala também como seletores e atributos CSS devem ser renderizados pelo navegador. Coisas desse tipo. E o mais importante, os padrões guiam como um site deve ser escrito de maneira que fique acessível a todos os dispositivos e pessoas. Nesse link vocês podem conferir todos os documentos escritos pela W3C. Vale a pena dar uma olhada.
  3. A missão da W3C é tornar a web um mundo perfeito. O paraíso da informação. A W3C quer garantir que a Web seja acessível por todo tipo de pessoa e em qualquer lugar. E a visão da W3C é que a web seja um canal de duas vias, onde a interação entre os usuários e os autores seja tão forte que não haja mais diferenciação entre eles. Eles visualizam a web também como troca intensa de informações e serviços. E, por fim, que a web seja confiável, segura e amigável.
  4. E agora começam os obstáculos. Vocês viram ali que os princípios da W3C falavam de web para todos e em qqer lugar. Mas cada pessoa possui um gadget diferente e quer usar a internet com ele. Hoje nós temos milhares de tipos de computadores: Macs, Windows, Linux, desktops, notebooks, netbooks. Os tablets agora. E também os celulares. Sem contar que temos agora televisões que acessam a internet, mesas, espelhos e geladeiras. Tudo isso com telas que podem ir de 3” até 40, 50”. Dispositivos que podem ser usados com mouse, teclado, toque ou até voz. Capacidades de processamento diferentes. Wow… é muito problema. E isso só falando do hardware.
  5. Em cada um desses dispositivos totalmente diferentes, ainda podemos ter diferentes navegadores. E a guerra hoje entre os navegadores está cada vez pior. Tudo isso nos leva a um lugar. Exatamente onde começamos. Nos padrões. Com toda essa gama de dispositivos e navegadores, se torna cada vez mais importante seguirmos os padrões para garantir que um usuário que acessa um site do celular tenha a mesma experiência de quem acessa no desktop. Notem que não significa que eles vão ver a mesma coisa igualzinho. Mas que vão conseguir aproveitar a informação do mesmo jeito. Pra garantir tudo isso existe um pequeno teste pra verificar como um navegador trabalha com os padrões.
  6. Esse teste é o Acid, que hoje está na versão 3. Esse que vocês tão vendo é o resultado do último beta do IE9. Ainda não é o melhor mas pro que era os seus sucessores tá muito bom. Isso falando só de padrões web, certo? O IE tem um ótimo desempenho quando se fala de performance e segurança
  7. Aqui o resultado dos outros navegadores principais do mercado. Os principais concorrentes do IE já alcançam nota máxima no Acid3, mas se vocês notarem a evolução do IE9 em relação ao IE8 chega a cair uma lágrima. Quem aqui usar IE? E desses quem tá testando o IE9? Quem usa Chrome aqui? Firefox? Safari? Opera? Alguem usa Opera? Uma coisa dá pra tirar de conclusão disso. Agora mais do que nunca podemos confiar que, se seguirmos os web standards, nosso site vai ser renderizado igual em todos os mais novos navegadores do mercado. O problema é que usuário não atualiza software, mas isso é outro problema. Os fabricantes estão se esforçando pelo menos.
  8. Além disso tudo, outras vantagens de se seguir os padrões é SEO, q significa o rankeamento de uma página em mecanismos de busca como bing e google. Os arquivos ficam bem menores, resultando em uma redução de banda enorme. Acessibilidade e compatibilidade como falei antes. Facilidade na manutenção, pq por serem padrões fica mais fácil de qualquer entender e achar oq for necessário. E flexibilidade no layout pela seperação entre conteúdo e apresentação, que é oq vou falar agora.
  9. Mas como eu começo a desenvolver com web standards? Simples. A primeira lição, a mais básica e também a mais importante é a separação entre as camadas da interface. Os desenvolvedores são acostumados a falar em camadas de software né? Back-end… bla bla bla Acontece que o front-end tbm deve ser dividido em camadas. E essas são: conteúdo, apresentação e comportamento. Os tres devem ser distintos e independentes.
  10. Começamos pelo conteúdo. Nos padrões isso siginifica códigos HTML ou XTHML.
  11. O conteúdo também pode ser chamado de markup, é diz respeito a estrutura de um site. O mais importante dessa camada é a semântica. Isso quer dizer que cada Tag tem um propósito de vida e deve ser usada para tal. H1 é o título principal de uma página, ul é uma lista não ordenada, e table é para apresentação de dados tabulares. Ouviram, dados tabulares, e não para diagramar um site inteiro. Anotem isso pq essa é a lição mais importante de toda essa palestra. Semântica, semântica, semântica. O resto é básico. Seja claro e conciso e use IDs e classes pra identificar oq for necessário.
  12. Agora a camada de apresentação. Essa é toda sobre CSS.
  13. Todos os estilos do site. Tudo que for relacionado a apresentação ou tema deve ser escrito no CSS. E todo o CSS deve ficar em um arquivo separado. Longe do HTML.
  14. O comportamento é o javascript e AJAX. Tudo que for adicionado para criar interatividade.
  15. O principal aqui é que uma página deve funcionar sem os scripts.
  16. A receitinha de bolo então é primeiro montar toda a estrutura HTML da página, com o conteúdo e tudo mais. Depois você cria os estilos no CSS pra deixar com o Design final. Só depois disso que deve ser acrescentado o javascript.
  17. Mostrar primeiro o código HTML e como fica na página. Depois linkar o CSS e mostrar como fica. Por fim mostrar o Super preview.
  18. Depois de tudo pronto, podemos testar o código pra ver se realmente está de acordo com os padrões.
  19. Agora pra quem desenvolve em .NET, não é tão fácil ter tanto cuidado, já que não temos controle total sobre o HTML final. Mas felizmente a Microsoft fez um trabalho direito. A maioria dos componentes do asp.net hoje renderiza código de acordo com os padrões já, necessitando somente alguns cuidados.
  20. Mostrar o expression web com suporte a desenvolvimento HTML5.