Desmistificando Herança e Protótipos no JS - Short

Desmistificando Herança e Protótipos no JS - Short

0a8f40c6cc23fb6c8aad4de732c5abaf?s=128

Lucas Santos

June 04, 2020
Tweet

Transcript

  1. Desmistificando Herança e Prototypes no Javascript Sempre esteve lá, ninguém

    sabia o porquê
  2. $ whoami Lucas Santos /khaosdoctor @_staticvoid lsantos.me Cloud Advocate ludossan@microsoft.com

    @khaosdoctor
  3. trainingcenter.io 2018.abcdevelopers.org

  4. O.O.P

  5. Encapsulamento

  6. None
  7. None
  8. Polimorfismo

  9. None
  10. Arrow functions não vão funcionar

  11. ????????

  12. Herança

  13. Herança nos dá isso

  14. Herança nos dá isso De onde veio isso?

  15. De onde as coisas vem?

  16. Tipos originais De onde tudo aparece

  17. Array()

  18. Function()

  19. Object()

  20. String Number Object Array Func RegExp

  21. None
  22. Como elas funcionam?

  23. None
  24. __proto__

  25. Nunca toque no __proto__

  26. Object.Prototype Não. Não é a mesma coisa

  27. Prototype é um objeto de propriedades

  28. O famoso “new”

  29. Instâncias

  30. Instâncias

  31. Instâncias

  32. Instâncias

  33. Instâncias

  34. Herança! Mas não é qualquer herança...

  35. Herança Prototípica

  36. Herança Prototípica

  37. Instâncias

  38. Cadeias de protótipos Como eu sei o que eu quero?

  39. Cadeias de protótipos

  40. Cadeias de protótipos

  41. Cadeias de protótipos

  42. Cadeia de protótipos

  43. Cadeia de protótipos

  44. Cadeias de protótipos: a prática

  45. O fim da cadeia

  46. O fim da cadeia?

  47. E o “extends”?

  48. Extends

  49. Extends

  50. Extends: Exemplo

  51. Extends

  52. O que eu faço com isso?

  53. 1. Métodos globais

  54. 2. Overload

  55. 2. Overload - Os problemas

  56. None
  57. 3. Performance

  58. 3. Performance .print

  59. 3. Performance

  60. 3. Performance

  61. 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
  62. /khaosdoctor @_staticvoid lsantos.me @khaosdoctor