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
Recompose
Search
Thulio Philipe
December 01, 2018
Programming
1
550
Recompose
Evento: JSDay Recife
Thulio Philipe
December 01, 2018
Tweet
Share
More Decks by Thulio Philipe
See All by Thulio Philipe
CUI & Feature Flags
thulioph
0
53
+97% of Time Reduction to Onboarding New Metrics
thulioph
0
110
Cache, além do CTRL + F5
thulioph
0
91
CSS na era dos Componentes
thulioph
0
360
Styled Components
thulioph
0
380
Redux 101
thulioph
0
240
Cache
thulioph
2
250
Segurança de Aplicações Web - 101
thulioph
0
140
Vuejs
thulioph
5
1k
Other Decks in Programming
See All in Programming
AIコーディングエージェントを 「使いこなす」ための実践知と現在地 in ログラス / How to Use AI Coding Agent in Loglass
rkaga
2
340
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
180
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
490
Agentic Applications with Symfony
el_stoffel
2
310
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
310
生成AIを使ったQAアプリケーションの作成 - ハンズオン補足資料
oracle4engineer
PRO
3
240
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.8k
Exit 8 for SwiftUI
ojun9
0
130
Do Dumb Things
mitsuhiko
0
440
Chrome Extension Techniques from Hell
moznion
1
160
Java 24まとめ / Java 24 summary
kishida
3
500
プロダクト横断分析に役立つ、事前集計しないサマリーテーブル設計
hanon52_
2
440
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
390
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Git: the NoSQL Database
bkeepers
PRO
430
65k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
YesSQL, Process and Tooling at Scale
rocio
172
14k
Designing for humans not robots
tammielis
252
25k
Transcript
Recompose O lodash para React
github.com/thulioph twitter.com/thulioph_ thulioph.com
github.com/thulioph twitter.com/thulioph_ thulioph.com
github.com/labcodes twitter.com/labcodes labcodes.com.br
None
None
Avisos
•Não se preocupe com os links, todos estão nos slides.
•Não se preocupe com os links, todos estão nos slides.
•Todo material será disponibilizado no final da apresentação.
•Não se preocupe com os links, todos estão nos slides.
•Todo material será disponibilizado no final da apresentação. •Tome nota de alguns termos, podem ser úteis para pesquisas futuras.
•Não se preocupe com os links, todos estão nos slides.
•Todo material será disponibilizado no final da apresentação. •Tome nota de alguns termos, podem ser úteis para pesquisas futuras. •Comunique-se!
Composição
– Dicionário “Ação ou efeito de compor, formar um todo.”
twitter.com/chantastic
youtu.be/YaZg8wg39QQ
None
None
Círculo grande
None
Círculo pequeno
None
Círculo pequeno dentro de um círculo grande
Círculo pequeno dentro de um círculo grande
Círculo pequeno dentro de um círculo grande
None
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado
None
None
Tecnicamente Falando
Círculo Render props context state lifecycle events
Círculo grande Render props context state lifecycle events Círculo pequeno
Render props context state lifecycle events
SMART Render props context state lifecycle events DUMB Render props
context state lifecycle events
CONTAINER Render props context state lifecycle events PRESENTATION Render props
context state lifecycle events
CONTROLLER Render props context state lifecycle events VIEW Render props
context state lifecycle events
DATA Render props context state lifecycle events DISPLAY Render props
context state lifecycle events
CÍRCULO GRANDE Render props context state lifecycle events CÍRCULO PEQUENO
Render props context
STATEFULL COMPONENTE STATELESS COMPONENTE
Divisão de Responsabilidades
Círculo pequeno dentro de um círculo grande
Círculo pequeno dentro de um círculo grande verde
Círculo pequeno dentro de um círculo grande laranja
Círculo pequeno dentro de um círculo grande amarelo
Círculo pequeno dentro de um círculo grande rosa
reutilizando o círculo pequeno
reutilizando o círculo pequeno componente
None
None
None
None
None
CONTAINER COMPONENTE
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado verde
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado laranja
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado amarelo
Círculo pequeno dentro de um círculo grande dentro de um
círculo pontilhado rosa
reutilizando os dois círculos
reutilizando os dois círculos containers
None
None
None
None
None
None
None
None
HIGHER-ORDER COMPONENT
Ferramentas
Lodash lodash.com
Lodash
Lodash
Lodash
npmjs.com/browse/depended
sitepoint.com/lodash-features-replace-es6
Recompose github.com/acdlite/recompose
withState()
Recompose
Recompose
Recompose
withHandlers()
Recompose
Recompose
Recompose
Recompose
lifecycle()
Recompose
Recompose
Recompose
Recompose
branch()
Recompose
Recompose
Recompose
Recompose
Recompose
nest()
Recompose
youtu.be/zD_judE-bXk
Briefing
1.Exibir uma lista de items em formato de card.
1.Exibir uma lista de items em formato de card. 2.Cada
card possui um toggle que exibe/esconde o conteúdo.
1.Exibir uma lista de items em formato de card. 2.Cada
card possui um toggle que exibe/esconde o conteúdo. 3.Os dados dos cards, serão fornecidos por uma API.
1.Exibir uma lista de items em formato de card. 2.Cada
card possui um toggle que exibe/esconde o conteúdo. 3.Os dados dos cards, serão fornecidos por uma API. 4.Enquanto carregar os cards, deve-se exibir um loading.
codesandbox.io/s/825zovqwm8
LET’S CODE!
parte 1 Exibir uma lista de items em formato de
card
None
None
None
None
None
None
None
codesandbox.io/s/825zovqwm8
parte 2 Cada card possui um toggle que exibe/esconde o
conteúdo
None
None
None
None
None
None
None
None
None
None
None
None
None
codesandbox.io/s/825zovqwm8
parte 3 Os dados dos cards, serão fornecidos por uma
API
None
None
None
None
None
None
None
codesandbox.io/s/825zovqwm8
parte 4 Enquanto carregar os cards, deve-se exibir um loading
None
None
None
None
None
None
None
codesandbox.io/s/825zovqwm8
None
Post-mortem
NÃO É A MÚSICA DO SLAYER
NÃO POSSUI LIGAÇÃO COM MORTE
— Esse que vos fala, agora. “É uma retrospectiva no
fim de um projeto, com o objetivo de analisar os desafios e resultados entregues. ”
lab.codes/devpleno
Obrigado! speakerdeck.com/thulioph/recompose