Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Ecossistema Front-End
Search
Thiago Alves Luiz
May 20, 2016
Programming
87
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ecossistema Front-End
Thiago Alves Luiz
May 20, 2016
More Decks by Thiago Alves Luiz
See All by Thiago Alves Luiz
Muito prazer! Mercado de Trabalho de TI
devthiago
0
160
How to enjoy WebVR right now
devthiago
0
78
Inside the Web
devthiago
1
71
Cenário atual do Front-End do ponto de vista de um desenvolvedor
devthiago
0
160
Johnny Five for noobs
devthiago
0
130
React Behind The Scenes
devthiago
1
160
Testando o seu CSS
devthiago
0
150
Repense, Recrie... React
devthiago
0
83
O ecossistema Front-End
devthiago
0
200
Other Decks in Programming
See All in Programming
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
240
setup-vp GitLab対応の裏側
naokihaba
0
120
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.1k
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
360
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
120
Workers Cache を知る
syumai
0
220
Family mrubyの進捗
kishima
1
130
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
520
Jetpack Compose メカニズム
skydoves
0
470
アクセシビリティから考える情報設計
high_g_engineer
0
390
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
570
wkhtmltopdfの次どうするか問題2026
willnet
2
1.6k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
260
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
530
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Faster Mobile Websites
deanohume
310
32k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Navigating Team Friction
lara
192
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
250
Odyssey Design
rkendrick25
PRO
2
810
Transcript
Ecossistema Front-End Thiago Alves @taltk9
Thiago Alves Luiz Front-End Developer @taltk9 /taltk9
codeminer42.com
Estamos contratando!!!
[email protected]
Codeminer 42 Novo Hamburgo - RS
None
None
Papo de Dev
github.com
linkedin.com
Ecossistema
Conjunto de elementos que interagem a fim de constituir um
sistema estável — O'Neil
Front-End
Camada de apresentação visual de um site ou aplicação web
Conjunto de elementos que interagem a fim de estruturar informações
visuais que permitam a comunicação de usuários com aplicações web
None
· HTML · CSS · JavaScript · UX · SEO
· Acessibilidade
None
None
None
Entender ao máximo as necessidades
None
jquery.com
// jQuery $('#element-id') // JavaScript document.getElementById('element-id')
// jQuery $('.element-className') // JavaScript document.querySelector('.element-className')
AJAX
None
None
None
None
HTML <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head>
<body> <ul id="my-list"><!-- empty --></ul> </body> </html>
jQuery var $myList = $('#my-list'); $.ajax({ url: 'https://api.domain.com/some-list', success: function
(resp) { var data = resp.data; data.map(function (value) { var $myListItem = $('<li>').html(value.title); $myList.append($myListItem); }); } });
HTML Resultante <!DOCTYPE html> ... <body> <ul id="my-list"> <li>Item 1</li>
<li>Item 2</li> <li>Item 3</li> <li>Item 4</li> </ul> </body> </html>
Template Engines
HTML <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head>
<body> <ul id="my-list"><!-- empty --></ul> <script id="template" type="text/template"> {{#each data}} <li>{{ title }}</li> {{/each}} </script> <script src="template-engine.js"></script> </body> </html>
Sem template engine var $myList = $('#my-list'); $.ajax({ url: 'https://api.domain.com/some-list',
success: function (resp) { var data = resp.data; data.map(function (value) { var $myListItem = $('<li>').html(value.title); $myList.append($myListItem); }); } });
Com template engine var $myList = $('#my-list'); var source =
$("#template").html(); var template = TemplateEngine.compile(source); $.ajax({ url: 'https://api.domain.com/some-list', success: function (resp) { $myList(template(resp)); } });
handlebarsjs.com
mozilla.github.io/nunjucks
Mas isso é o básico...
Alguns padrões foram estabelecidos
Boilerplates
html5boilerplate.com
modernizr.com
necolas.github.io/normalize.css
github.com/seanpowell/Email-Boilerplate
Bootstrap
getbootstrap.com
foundation.zurb.com
purecss.io
Muitas requisições e updates
Controle do fluxo de dados e aplicação
Frameworks
backbonejs.org
emberjs.com
angularjs.org
Aplicações tornaram-se mais complexas
... <link rel="stylesheet" href="style-1.css"> <link rel="stylesheet" href="style-2.css"> <link rel="stylesheet" href="style-3.css">
<link rel="stylesheet" href="style-4.css"> <link rel="stylesheet" href="style-5.css"> <link rel="stylesheet" href="style-6.css"> ... <script src="script-1"></script> <script src="script-2"></script> <script src="script-3"></script> <script src="script-4"></script> <script src="script-5"></script> <script src="script-6"></script> <script src="script-7"></script> <script src="script-8"></script> <script src="script-9"></script> <script src="script-10"></script> <script src="script-11"></script> <script src="script-12"></script> <script src="script-13"></script> <script src="script-14"></script> <script src="script-15"></script> ...
None
· Projetos mais complexos · Manutenção · DRY - Don't
Repeat Yourself
Tooling
None
None
· Linha de Comando · Automatizar tarefas · Transformar arquivos
· Controlar libs e plugins
gruntjs.com
gulpjs.com
bower.io
Manter CSS é chato!!!
Desculpem :(
Pré-Processadores
· Separar CSS por feature · Criar variáveis e funções
· Automatizar sprites etc
sass-lang.com
lesscss.org
compass-style.org
JavaScript com novas features
ES2015 (ES6)
// Antes var fn = function (x) { return x
+ 1; }; // Depois const fn = (x) => x + 1
Navegadores não suportam totalmente a nova versão
babeljs.io
Modularizar aplicações web se tornou uma solução viável
webpack.github.io
Componentizar interfaces surgiu como uma nova abordagem
polymer-project.org
facebook.github.io/react
· Testes · Acessibilidade · Meta Data
Comunidade
html5rocks.com
jsrocks.org
maujor.com
Eventos
braziljs.org/conf
frontinsm.com.br
Obrigado! @taltk9