Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ecossistema Front-End
Search
Thiago Alves Luiz
May 20, 2016
Programming
86
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
150
How to enjoy WebVR right now
devthiago
0
76
Inside the Web
devthiago
1
69
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
150
Testando o seu CSS
devthiago
0
150
Repense, Recrie... React
devthiago
0
82
O ecossistema Front-End
devthiago
0
200
Other Decks in Programming
See All in Programming
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
300
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
500
「人を評価する AI」の設計と実装
ryoyanara
0
180
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
880
5分で問診!Composer セキュリティ健康診断
codmoninc
0
930
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
340
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
560
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
590
プロポーザルを書いてもらう
pvcresin
0
300
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
160
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Featured
See All Featured
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
500
Site-Speed That Sticks
csswizardry
13
1.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
590
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
420
A better future with KSS
kneath
240
18k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
270
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Leo the Paperboy
mayatellez
8
2.1k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
390
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
520
Docker and Python
trallard
47
4.1k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
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