SlideShare uma empresa Scribd logo
1 de 26
Globalcode – Open4education
Ferramentas e Bibliotecas que você
deveria estar utilizando
Desenvolvimento Web
Globalcode – Open4education
1/2 Zombie Team
Max Claus Nunes Danimar Ribeiro
email: maxcnunes@gmail.com
skype: maxcnunes
github: github.com/maxcnunes
blog: blog.maxcnunes.net
email: danimaribeiro@gmail.com
github: github.com/danimaribeiro
Globalcode – Open4education
Agenda
Ferramentas
• Developer Tools Chrome
• YSlow e PageSpeed
• Sprintgen
• Bundle (ASP.NET MVC)
Bibliotecas e Frameworks
• Modernizer
• Twitter Bootstrap
Exemplos Utilizados: https://github.com/maxcnunes/TDC-2013
Globalcode – Open4education
Desenvolvimento Web:
O que o usuário quer?
• Design Amigável - Que seja fácil de usar e funcione bem em
qualquer dispositivo
• Velocidade de uso - Não quer ficar esperando página carregar
Globalcode – Open4education
Desenvolvimento Web:
O que o desenvolvedor quer?
• Fácil de desenvolver, experimentar alterações e
encontrar bugs
• Design Responsivo - Mas de uma maneira que não precise
começar do zero
• Alta Performance - Diminuir a quantidade e tamanho das
requisições HTTP
• Usar HTML 5 e CSS 3 - Garantindo que os usuários tenham a
melhor experiência possível independente do navegador que estejam
utilizando
Globalcode – Open4education
Developer Tools Chrome
Fácil de desenvolver, experimentar alterações e
encontrar bugs
Globalcode – Open4education
Podia ser mais simples...
Ver o problema
Editar código em
algum editor de
texto ou IDE
Salvar alterações
Recarregar o
Browser
novamente
Processo de codificação
Globalcode – Open4education
Developer Tools
Chrome
• Comandos: inspect, $0, monitorEvents
• Custom rule css
• Console Logging: log, info, debug, warn, error, assert, group, time
• Debugging: debugger, breaskpoints
• Workspace
• Local Modifications
• Aba Network
• Chrome HAR viewer
Globalcode – Open4education
Atalhos uteis
Source
• Ctrl+Shift+E - Executar no console código selecionado na aba Sources.
• Ctrl+Shift+O - Buscar função pelo nome.
• Esc - Abre/Fecha o console
• Ctrl+F - Procurar no arquivo atual.
• Ctrl+Shift+F - Procurar em todos os arquivos.
• Ctrl+O - Buscar arquivo pelo nome.
• Ctrl+Shif+J - Abrir Dev Tools direto na aba de Console
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/debugging
Globalcode – Open4education
YSlow, PageSeepd,
Sprite e Bundle
Alta Performance
Globalcode – Open4education
YSlow e PageSpeed
•http://developer.yahoo.com/yslow/
•https://developers.google.com/speed/
Globalcode – Open4education
YSlow e PageSpeed
• Provê estatisticas sobre a página
• Mostra quais itens precisam de atenção.
o
Diminuir quantidade de requisições
o
Usar cache do navegador
o
Minificar javascript e css
• Otimiza javascript e css.
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/bundle
Globalcode – Open4education
Bundle
• O que é?
• Fazendo manualmente.
o
http://refresh-sf.com/yui/
• Integrado a sua linguagem de preferência
• O que ele faz por você
• Minifica CSS
• Minifica JS
• Demo AspNet MVC
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/bundle
Globalcode – Open4education
Sprite {tool: Spritegen}
• Reduz a quantidade de requisições HTTP
combinando várias imagens em um único
arquivo
• Utiliza background-position no CSS para atribuir a
imagem correta para cada elemento
• Ferramenta: Spritegen
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/sprite
Globalcode – Open4education
Modernizr
Usar HTML 5 e CSS 3
Globalcode – Open4education
Modernizr
• Inclui HTML5 “shim”
• Detecta se o navegador do usuário tem suporte
para recursos do HTML5 e CSS3
• Possibilita que o desenvolvedor trate cada
situação do qual o browser não suporta
• YepNope - permite carregar apenas o que o
seu usuário necessita
Modernizr
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/modernizr
Globalcode – Open4education
Twitter Bootstrap
Design Responsivo
Globalcode – Open4education
Twitter Bootstrap
• Melhor experiência visual para o usuário em
qualquer dispositivo e resolução
• CSS media query - estilo específico de acordo
com o dispositivo e resolução utilizada pelo
usuário
• Ponto de partida para um design reponsivo
• Fácil customização
• Temas - http://bootswatch.com/
Twitter Bootstrap
Globalcode – Open4education
DEMO
Código Fonte: https://github.com/maxcnunes/TDC-2013/tree/master/exemplos/twitter-bootstrap
Globalcode – Open4education
De uma olhada também em:
• Integração Contínua - Travis
• Tests para Javascript - Jasmine ou QUnit
• Google Fonts
Outras ferramentas
Globalcode – Open4education
Dúvidas?

Mais conteúdo relacionado

Mais procurados

Aula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolAula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolBruno Orlandi
 
Mini aula-sublime-text-git-e-github
Mini aula-sublime-text-git-e-githubMini aula-sublime-text-git-e-github
Mini aula-sublime-text-git-e-githubWilson Mendes
 
Treinamento git - Papos RBSDev
Treinamento git - Papos RBSDevTreinamento git - Papos RBSDev
Treinamento git - Papos RBSDevHélio Medeiros
 
Conhecendo o git.
Conhecendo o git.Conhecendo o git.
Conhecendo o git.Rafael Ivan
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteComunidade NetPonto
 
Learn about Git - Git Tutorial
Learn about Git - Git TutorialLearn about Git - Git Tutorial
Learn about Git - Git TutorialLucas Brigida
 
Git e git hub para iniciantes
Git e git hub para iniciantesGit e git hub para iniciantes
Git e git hub para iniciantesMario Ernesto
 
Introdução ao GitHub e Git
Introdução ao GitHub  e GitIntrodução ao GitHub  e Git
Introdução ao GitHub e GitIgor Steinmacher
 
Git e Github - Comandos e conceitos básicos
Git e Github - Comandos e conceitos básicos Git e Github - Comandos e conceitos básicos
Git e Github - Comandos e conceitos básicos Jonathan Célio
 
Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016Victor Souza
 
Git e Github para Iniciantes by Alysson Ajackson
Git e Github para Iniciantes by Alysson AjacksonGit e Github para Iniciantes by Alysson Ajackson
Git e Github para Iniciantes by Alysson AjacksonAlysson Ajackson
 
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Mauro George
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubGilson Junior
 
Git that like a boss - Dos comandos básicos aos branches.
Git that like a boss - Dos comandos básicos aos branches.Git that like a boss - Dos comandos básicos aos branches.
Git that like a boss - Dos comandos básicos aos branches.Hélio Medeiros
 

Mais procurados (20)

Git & GitHub for beginners
Git & GitHub for beginnersGit & GitHub for beginners
Git & GitHub for beginners
 
Aula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolAula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - Webschool
 
Git e GitHub - Conceitos Básicos
Git e GitHub - Conceitos BásicosGit e GitHub - Conceitos Básicos
Git e GitHub - Conceitos Básicos
 
Git
GitGit
Git
 
Mini aula-sublime-text-git-e-github
Mini aula-sublime-text-git-e-githubMini aula-sublime-text-git-e-github
Mini aula-sublime-text-git-e-github
 
Controle de versão com e git
Controle de versão com e gitControle de versão com e git
Controle de versão com e git
 
Treinamento git - Papos RBSDev
Treinamento git - Papos RBSDevTreinamento git - Papos RBSDev
Treinamento git - Papos RBSDev
 
Primeiros passos - GIT
Primeiros passos - GITPrimeiros passos - GIT
Primeiros passos - GIT
 
Conhecendo o git.
Conhecendo o git.Conhecendo o git.
Conhecendo o git.
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto Proiete
 
Learn about Git - Git Tutorial
Learn about Git - Git TutorialLearn about Git - Git Tutorial
Learn about Git - Git Tutorial
 
Git e git hub para iniciantes
Git e git hub para iniciantesGit e git hub para iniciantes
Git e git hub para iniciantes
 
Introdução ao GitHub e Git
Introdução ao GitHub  e GitIntrodução ao GitHub  e Git
Introdução ao GitHub e Git
 
Git e Github - Comandos e conceitos básicos
Git e Github - Comandos e conceitos básicos Git e Github - Comandos e conceitos básicos
Git e Github - Comandos e conceitos básicos
 
Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016
 
Git para quem vem do SVN
Git para quem vem do SVNGit para quem vem do SVN
Git para quem vem do SVN
 
Git e Github para Iniciantes by Alysson Ajackson
Git e Github para Iniciantes by Alysson AjacksonGit e Github para Iniciantes by Alysson Ajackson
Git e Github para Iniciantes by Alysson Ajackson
 
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHub
 
Git that like a boss - Dos comandos básicos aos branches.
Git that like a boss - Dos comandos básicos aos branches.Git that like a boss - Dos comandos básicos aos branches.
Git that like a boss - Dos comandos básicos aos branches.
 

Semelhante a Ferramentas e bibliotecas para desenvolvimento web otimizado

TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...tdc-globalcode
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaCleber Dantas
 
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterGerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterEdlaine Zamora
 
Pense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend FrameworkPense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend FrameworkFlávio Lisboa
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Durotdc-globalcode
 
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122Bruno Souza
 
Organizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaOrganizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaJohnathan Cardoso
 
Cross testing mobile com ruby, cucumber e appium
Cross testing mobile com ruby, cucumber e appiumCross testing mobile com ruby, cucumber e appium
Cross testing mobile com ruby, cucumber e appiumMaximiliano Alves
 
TDC Floripa 2018 - Metralhando sua API
TDC Floripa 2018 - Metralhando sua APITDC Floripa 2018 - Metralhando sua API
TDC Floripa 2018 - Metralhando sua APIEdlaine Zamora
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensourceCDS
 
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Daniel Makiyama
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensourceCDS
 
(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScript(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScriptCarlos Santos
 

Semelhante a Ferramentas e bibliotecas para desenvolvimento web otimizado (20)

TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
 
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterGerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
 
Pense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend FrameworkPense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend Framework
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 
Codando com PHP e JQuery
Codando com PHP e JQueryCodando com PHP e JQuery
Codando com PHP e JQuery
 
Machine Learning Black Boxes
Machine Learning Black BoxesMachine Learning Black Boxes
Machine Learning Black Boxes
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
 
Web open source
Web open sourceWeb open source
Web open source
 
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
 
Organizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaOrganizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gosta
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
Study jam - dia 1
Study jam  - dia 1Study jam  - dia 1
Study jam - dia 1
 
Cross testing mobile com ruby, cucumber e appium
Cross testing mobile com ruby, cucumber e appiumCross testing mobile com ruby, cucumber e appium
Cross testing mobile com ruby, cucumber e appium
 
Metralhando sua API
Metralhando sua APIMetralhando sua API
Metralhando sua API
 
TDC Floripa 2018 - Metralhando sua API
TDC Floripa 2018 - Metralhando sua APITDC Floripa 2018 - Metralhando sua API
TDC Floripa 2018 - Metralhando sua API
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensource
 
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensource
 
(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScript(A04 e A05) LabMM3 - JavaScript
(A04 e A05) LabMM3 - JavaScript
 

Ferramentas e bibliotecas para desenvolvimento web otimizado

Notas do Editor

  1. Performance - porque é importante. Estudos mostram que quanto mais rápida a página mais usuários ele tem. A cada segundo de carregamento perde-se 11% em visualizações de página. Outro importante fator, google considera a velocidade de sua página no PageRank
  2. Duas ferramentas para analisar performance
  3. YSlow mostra graficos com e sem cache. Explicar porque os 3 itens são importantes.
  4. O bundle como foi mostrado pode ser feito manualmente, pegando cada javascript e css e juntando eles.