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
De volta ao Futuro do JS: As próximas features ...
Search
Willian Martins
August 08, 2020
Technology
0
79
De volta ao Futuro do JS: As próximas features e propostas incríveis
Willian Martins
August 08, 2020
Tweet
Share
More Decks by Willian Martins
See All by Willian Martins
Empirical Observations on the The Future of Scalable UI Architecture
wmsbill
0
140
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
840
Back to the future of JS II: Beyond what we can foresee
wmsbill
0
97
A, B, C. 1, 2, 3. Iterables you and me.
wmsbill
0
80
Back to the future of JS II: Beyond what we can foresee
wmsbill
0
87
Back to the future of JS.
wmsbill
0
11
Node conf ar 2018.
wmsbill
0
480
Back to the future of JS
wmsbill
1
55
Back to the future of JS
wmsbill
2
260
Other Decks in Technology
See All in Technology
Goで作って学ぶWebSocket
ryuichi1208
0
630
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
130
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
980
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
400
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
110
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
1.3k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
16
6.2k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
34
3.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Rails Girls Zürich Keynote
gr2m
94
13k
Navigating Team Friction
lara
183
15k
Side Projects
sachag
452
42k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Thoughts on Productivity
jonyablonski
69
4.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Facilitating Awesome Meetings
lara
52
6.2k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Bash Introduction
62gerente
611
210k
Transcript
E ai, Beleza?
Quem é você!?
Pq vc tá aqui?
https://github.com/tc39/proposals
BrazilJS - ES
@wmsbill O que é this?
@wmsbill this no escopo global Browser - window Web worker
- self NodeJS - module.exports
@wmsbill this dentro de uma função?
@wmsbill this dentro de uma função?
None
@wmsbill Como fazer this ser previsível? Entender o valor de
this é complicado Function.prototype.bind Arrow function () => {}
Com .bind()
Com Arrow
@wmsbill Invocando uma função conhecida
@wmsbill Extraindo um método de um objeto
None
@wmsbill Duas sintaxes Unária : :context.method() Binária context: :method()
@wmsbill Sintaxe unária
@wmsbill Sintaxe Binária
@wmsbill
@wmsbill
@wmsbill
@wmsbill Operador Bind é útil para métodos virtuais Mas precisa
que do this para ser travado
@wmsbill Compondo sem this
@wmsbill
@wmsbill
None
@wmsbill Operador pipeline |> Sintaxe sugar para composição de funções
Cria uma cadeia de funções fluida
@wmsbill Operador pipeline |>
@wmsbill
@wmsbill
@wmsbill
@wmsbill Função com mais de um parâmetro.
@wmsbill Função com mais de um parâmetro.
@wmsbill Awaiting uma função
@wmsbill Awaiting uma função
@wmsbill Awaiting uma função
@wmsbill Awaiting uma função
@wmsbill Awaiting uma função
None
@wmsbill Smart pipeline Dois tipos bare style e topic style
() e [] são proibidos no bare style Quando () ou [] é necessário, usa- se o topic style # é um token temporário
@wmsbill Smart pipeline
@wmsbill What about curry?
None
@wmsbill Proposta de pipeline F# Extende a proposta mínima com
o passo await O passo await espera pela resolução do passo anterior.
@wmsbill Proposta de pipeline F#
@wmsbill
@wmsbill Partial application f(…) aridade = n; partialapp(f(…)) aridade =
m; m < n
@wmsbill
@wmsbill
@wmsbill Partial application no JS Possível com Function.prototype.bind .bind() trava
contexto e parametros
@wmsbill
@wmsbill Mas e o currying? É possível fazer partial application
com curry Curry ≠ Partial application Curry retorna aridade n-1
@wmsbill
@wmsbill Partial application com arrow function
None
@wmsbill Proposta partial application Cria dois novos tokens de parametros
? Para argumento único . . . para múltiplos argumentos (não está mais na spec inicial)
@wmsbill Syntaxe do partial application
@wmsbill With arbitrary parameter
None
@wmsbill Partial application em template string
@wmsbill Partial application em template string
None
@wmsbill O token . . . Espalha os argumentos não
travados Útil quando se quer travar ou o primeiro ou o último parâmetro
@wmsbill O token . . .
@wmsbill O token . . .
@wmsbill Partial application + pipeline
@wmsbill Partial application + pipeline
@wmsbill Posso usar isso em produção? Essas propostas estão em
estágios muito iniciais A adoção de uma pode mudar ou eliminar a adoção de outra Não está pronta pra prod (ainda)
https://www.twitch.tv/williandev https://twitter.com/wmsbill
[email protected]
Valeus! Falows!