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
ReactJS Starter
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Gefy Marcos
November 22, 2022
Programming
0
38
ReactJS Starter
Palestra realizada durante o november tech, no Senac, Tubarão - SC em 11/2022.
Gefy Marcos
November 22, 2022
Tweet
Share
More Decks by Gefy Marcos
See All by Gefy Marcos
Desbravando a Carreira em Desenvolvimento: Dicas e Estratégias para iniciantes
gefymarcos
0
32
Zod: Levando a validação de dados a um novo nível.
gefymarcos
0
1.5k
Clean Code: Boas práticas e design de código
gefymarcos
0
160
Web to PWA!
gefymarcos
0
73
React Native por onde começar
gefymarcos
0
150
Other Decks in Programming
See All in Programming
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
280
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
250
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
890
Windows on Ryzen and I
seosoft
0
280
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.1k
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
230
20260315 AWSなんもわからん🥲
chiilog
2
150
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
110
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
150
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
480
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
220
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
180
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
150
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
160
The Curse of the Amulet
leimatthew05
1
10k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Abbi's Birthday
coloredviolet
2
5.3k
Believing is Seeing
oripsolob
1
83
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
120
The Curious Case for Waylosing
cassininazir
0
270
Google's AI Overviews - The New Search
badams
0
930
Building Adaptive Systems
keathley
44
3k
Transcript
REACTJS STARTER
Founder @code4tuba GEFY GEFFERSON MARCOS Tech Lead Frontend @ StudioSol
None
O QUE É REACT? UMA BIBLIOTECA JAVASCRIPT PARA CRIAR INTERFACES
DE USUÁRIO
Facilita a criação de UIs; Deixa o código mais previsível
e simples de depurar. DECLARATIVO
Permite criar componentes encapsulados que gerenciam seu próprio estado; Permite
deixar a lógica da aplicação fora do DOM. BASEADO EM COMPONENTES
Funciona na Web, no backend com Node e para aplicativos
com React-Native. USE EM QUALQUER LUGAR
TEM MERCADO?
QUEM USA?
HELLO WORLD
ISSO É REACT class HelloWorld extends React.Component { render() {
return <div>Hello World </ div>; } } root.render(<HelloWorld /> );
É uma extensão de sintaxe para javascript; Recomendado para escrever
a UI; JSX
No React a lógica de renderização é acoplada as outras
lógicas de UI; Manipulação de eventos; Mudança de estado; Preparação de dados pra exibição. POR QUE JSX?
EU SOU UM ARQUIVO JSX const element = <h1>Hello, world!</h1>;
O DOM é a representação de dados de uma página
web; O React criou o React DOM pra fazer a manipulação desse DOM de forma performática. RENDERIZAÇÃO DE ELEMENTOS
O React DOM compara o elemento novo e seus f
ilhos e aplica a alteração só no nó que mudou. FONTE: HTTPS://CODEPEN.IO/GAEARON/PEN/GWOJEZ?EDITORS=1010 REACT DOM
INSERINDO ELEMENTO NO DOM <div id="root"></div> const element = <h1>Hello,
world!</h1>; ReactDOM.render( element, document.getElementById('root') ); .html .js
class HelloWorld extends React.Component { render() { return <div>Hello World
</ div>; } } root.render(<HelloWorld /> );
FONTE: HTTPS://BABELJS.IO/REPL BABEL
class HelloWorld extends React.Component { render() { return /*#__PURE__*/React.createElement("div", null,
"Hello World"); } } root.render( /*#__PURE__*/React.createElement(HelloWorld, null));
COMPONENTE DECLARATIVO function Welcome() { return <h1>Hello World</h1>; } class
Welcome extends React.Component { render() { return <h1>Hello World</h1>; } }
COMPONENTE DECLARATIVO const element = <h1>Hello, world!</h1>; ReactDOM.render( element, document.getElementById('root')
); <div id="root"></div>
COMPONENTE DECLARATIVO const element = <Welcome />; ReactDOM.render( element, document.getElementById('root')
); <div id="root"></div>
COMPONENTE DECLARATIVO ReactDOM.render( <Welcome />, document.getElementById('root') ); <div id="root"></div>
Props são imutáveis; States são mutáveis e quando seu valor
é alterado os métodos do ciclo de vida são executados. PROPS VS STATE
STATE E PROPS ReactDOM.render( <Welcome title="Senac" /> , document.getElementById('root') );
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> </ div> ); } }
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac </ div> ); } }
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button> {this.state.text} // undefined </ button> </ div> ); } }
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); this.state = { text: "não clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button> {this.state.text} // não clicou </ button> </ div> ); } }
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); this.state = { text: "não clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button onClick={() => this.setState({ text: "clicou"})} > {this.state.text} // não clicou </ button> </ div> ); } }
STATE E PROPS class Welcome extends React.Component { constructor(props) {
super(props); this.state = { text: "clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button onClick={() => this.setState({ text: "clicou"})} > {this.state.text} // clicou </ button> </ div> ); } }
None
PRIMEIRO PASSO
PRIMEIRO PASSO Header
PRIMEIRO PASSO Order Options Header
PRIMEIRO PASSO Card Order Options Header
PRIMEIRO PASSO Card Title Card Image Card Description Card Info
Card Button Order Options Header Card
Jest; Typescript; React Router; Redux; Nextjs; Awesome-React. HTTPS://GITHUB.COM/ENAQX/AWESOME-REACT MUITA COISA…
FINE. I'LL DO IT MYSELF
PENSANDO DO JEITO REACT
- https://roadmap.sh/ HTTPS://GITHUB.COM/ENAQX/AWESOME-REACT ESTEJA PRONTO!
ROADMAP.SH
- https://roadmap.sh/ - https://github.com/felipe f ialho/frontend- challenges; - https://github.com/CollabCodeTech/ backend-challenges
-https://gefymarcos.com.br HTTPS://GITHUB.COM/ENAQX/AWESOME-REACT ESTEJA PRONTO!
14habits.com
OBRIGADO!
HTTPS://GITHUB.COM/GEFYMARCOS/MARVEL-REACT