Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Desmistificando Herança e Protótipos no JS - Short
Lucas Santos
June 04, 2020
Programming
1
96
Desmistificando Herança e Protótipos no JS - Short
Lucas Santos
June 04, 2020
Tweet
Share
More Decks by Lucas Santos
See All by Lucas Santos
khaosdoctor
0
31
khaosdoctor
0
23
khaosdoctor
0
42
khaosdoctor
0
45
khaosdoctor
1
120
khaosdoctor
1
79
khaosdoctor
2
120
khaosdoctor
3
600
khaosdoctor
0
130
Other Decks in Programming
See All in Programming
rshindo
2
290
zsmb
2
110
siketyan
1
110
kyoheig3
0
420
muttsu_623
0
470
masayaaoyama
4
530
komagata
1
1.8k
itosho525
0
360
jun0
3
640
kyonmm
2
2.1k
line_developers_tw2
0
630
o0h
PRO
1
1.5k
Featured
See All Featured
chriscoyier
499
130k
lynnandtonic
270
16k
hannesfritz
27
930
philhawksworth
190
17k
dougneiner
119
7.8k
searls
204
35k
smashingmag
283
47k
addyosmani
494
110k
reverentgeek
168
7.1k
smashingmag
229
18k
reverentgeek
27
1.9k
geeforr
332
29k
Transcript
Desmistificando Herança e Prototypes no Javascript Sempre esteve lá, ninguém
sabia o porquê
$ whoami Lucas Santos /khaosdoctor @_staticvoid lsantos.me Cloud Advocate ludossan@microsoft.com
@khaosdoctor
trainingcenter.io 2018.abcdevelopers.org
O.O.P
Encapsulamento
None
None
Polimorfismo
None
Arrow functions não vão funcionar
????????
Herança
Herança nos dá isso
Herança nos dá isso De onde veio isso?
De onde as coisas vem?
Tipos originais De onde tudo aparece
Array()
Function()
Object()
String Number Object Array Func RegExp
None
Como elas funcionam?
None
__proto__
Nunca toque no __proto__
Object.Prototype Não. Não é a mesma coisa
Prototype é um objeto de propriedades
O famoso “new”
Instâncias
Instâncias
Instâncias
Instâncias
Instâncias
Herança! Mas não é qualquer herança...
Herança Prototípica
Herança Prototípica
Instâncias
Cadeias de protótipos Como eu sei o que eu quero?
Cadeias de protótipos
Cadeias de protótipos
Cadeias de protótipos
Cadeia de protótipos
Cadeia de protótipos
Cadeias de protótipos: a prática
O fim da cadeia
O fim da cadeia?
E o “extends”?
Extends
Extends
Extends: Exemplo
Extends
O que eu faço com isso?
1. Métodos globais
2. Overload
2. Overload - Os problemas
None
3. Performance
3. Performance .print
3. Performance
3. Performance
Referências - bit.ly/medium-prototypes - bit.ly/ecma-proto - mzl.la/mdn-proto - mzl.la/function-js -
mzl.la/extends-jsx - bit.ly/encapsulamento-js - bit.ly/polimorfismo-js - bit.ly/this-js - bit.ly/imasters-smoosh
/khaosdoctor @_staticvoid lsantos.me @khaosdoctor